summaryrefslogtreecommitdiff
path: root/tier2/dmconnect.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tier2/dmconnect.cpp')
-rw-r--r--tier2/dmconnect.cpp62
1 files changed, 62 insertions, 0 deletions
diff --git a/tier2/dmconnect.cpp b/tier2/dmconnect.cpp
new file mode 100644
index 0000000..b8b41f1
--- /dev/null
+++ b/tier2/dmconnect.cpp
@@ -0,0 +1,62 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose: A higher level link library for general use in the game and tools.
+//
+//===========================================================================//
+
+#include <tier2/tier2.h>
+#include "datamodel/idatamodel.h"
+#include "dmserializers/idmserializers.h"
+
+
+//-----------------------------------------------------------------------------
+// Set up methods related to datamodel interfaces
+//-----------------------------------------------------------------------------
+bool ConnectDataModel( CreateInterfaceFn factory )
+{
+ if ( !g_pDataModel->Connect( factory ) )
+ return false;
+
+ if ( !g_pDmElementFramework->Connect( factory ) )
+ return false;
+
+ if ( !g_pDmSerializers->Connect( factory ) )
+ return false;
+
+ return true;
+}
+
+InitReturnVal_t InitDataModel()
+{
+ InitReturnVal_t nRetVal;
+
+ nRetVal = g_pDataModel->Init( );
+ if ( nRetVal != INIT_OK )
+ return nRetVal;
+
+ nRetVal = g_pDmElementFramework->Init();
+ if ( nRetVal != INIT_OK )
+ return nRetVal;
+
+ nRetVal = g_pDmSerializers->Init();
+ if ( nRetVal != INIT_OK )
+ return nRetVal;
+
+ return INIT_OK;
+}
+
+void ShutdownDataModel()
+{
+ g_pDmSerializers->Shutdown();
+ g_pDmElementFramework->Shutdown();
+ g_pDataModel->Shutdown( );
+}
+
+void DisconnectDataModel()
+{
+ g_pDmSerializers->Disconnect();
+ g_pDmElementFramework->Disconnect();
+ g_pDataModel->Disconnect();
+}
+
+