diff options
Diffstat (limited to 'tier2/dmconnect.cpp')
| -rw-r--r-- | tier2/dmconnect.cpp | 62 |
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(); +} + + |