1 #ifndef _INCLUDE_SOURCEMOD_GLOBALS_H_
2 #define _INCLUDE_SOURCEMOD_GLOBALS_H_
5 * @file Contains global headers that most files in SourceMod will need.
8 #include <sp_vm_types.h>
10 #include "sm_platform.h"
11 #include "interfaces/IShareSys.h"
13 using namespace SourcePawn;
14 using namespace SourceMod;
17 * @brief Any class deriving from this will be automatically initiated/shutdown by SourceMod
21 friend class SourceModBase;
26 * @brief Called when SourceMod is initially loading
28 virtual void OnSourceModStartup(bool late)
33 * @brief Called after all global classes have initialized
35 virtual void OnSourceModAllInitialized()
40 * @brief Called when SourceMod is shutting down
42 virtual void OnSourceModShutdown()
47 * @brief Called after SourceMod is completely shutted down
49 virtual void OnSourceModAllShutdown()
53 SMGlobalClass *m_pGlobalClassNext;
54 static SMGlobalClass *head;
57 extern ISourcePawnEngine *g_pSourcePawn;
58 extern IVirtualMachine *g_pVM;
59 extern IdentityToken_t *g_pCoreIdent;
61 #include "sm_autonatives.h"
63 #endif //_INCLUDE_SOURCEMOD_GLOBALS_H_