My Project
ParaEngine.h
1 #pragma once
2 // config file for ParaEngine
3 #ifdef WIN32
4 #include "ParaEngineClientConfig.win32.h"
5 #else
6 #include "ParaEngineClientConfig.h"
7 #endif
8 #include "coreexport.h"
9 
10 #include "Platforms.h"
11 
12 #ifndef DROP_ASSET
13 
14 #define DROP_ASSET(x) if(x){x->Release();x=0;}
15 #endif
16 #ifndef GRAB_ASSET
17 
18 #define GRAB_ASSET(x) if((x)!=0){(x)->addref();}
19 #endif
20 
21 #include <boost/shared_ptr.hpp>
22 #include <boost/signals2.hpp>
23 #include <boost/bind.hpp>
24 #include "util/intrusive_ptr.h"
25 namespace NPL
26 {
27  typedef boost::shared_ptr<CNPLConnection> NPLConnection_ptr;
28  typedef boost::shared_ptr<CNPLRuntimeState> NPLRuntimeState_ptr;
29  typedef boost::shared_ptr<NPLServerInfo> NPLServerInfo_ptr;
30 
31  // Note: using intrusive_ptr with a mutex is about 10% faster than using shared_ptr
32  // typedef boost::shared_ptr<NPLMessage> NPLMessage_ptr;
33  typedef ParaIntrusivePtr<NPLMessage> NPLMessage_ptr;
34 
35  typedef ParaIntrusivePtr<NPLMsgOut> NPLMsgOut_ptr;
36 
37  typedef boost::shared_ptr<NPLRuntimeAddress> NPLRuntimeAddress_ptr;
38  typedef boost::shared_ptr<NPLTimer> NPLTimer_ptr;
39 }
40 
41 #include "util/Log.h"
42 #include "debugtools/paradebug.h"
43 #include "PERef.h"
44 #include "Report.h"
45 #include "ParaGlobals.h"
46 #include "math/ParaMathUtility.h"
47 // give access to global objects and functions
48 #include "Globals.h"
49 #include "FileManager.h"
50 
51 
define this to enable debugging of NPL code in visual studio
Definition: INPL.h:9
Definition: class.hpp:124