orx  stable
Portable Game Engine
orxModule.h
Go to the documentation of this file.
1 /* Orx - Portable Game Engine
2  *
3  * Copyright (c) 2008-2017 Orx-Project
4  *
5  * This software is provided 'as-is', without any express or implied
6  * warranty. In no event will the authors be held liable for any damages
7  * arising from the use of this software.
8  *
9  * Permission is granted to anyone to use this software for any purpose,
10  * including commercial applications, and to alter it and redistribute it
11  * freely, subject to the following restrictions:
12  *
13  * 1. The origin of this software must not be misrepresented; you must not
14  * claim that you wrote the original software. If you use this software
15  * in a product, an acknowledgment in the product documentation would be
16  * appreciated but is not required.
17  *
18  * 2. Altered source versions must be plainly marked as such, and must not be
19  * misrepresented as being the original software.
20  *
21  * 3. This notice may not be removed or altered from any source
22  * distribution.
23  */
24 
45 #ifndef _orxMODULE_H_
46 #define _orxMODULE_H_
47 
48 
49 #include "base/orxVersion.h"
50 
51 
53 typedef enum __orxMODULE_ID_t
54 {
103 
105 
107 
109 
110  orxMODULE_ID_NONE = orxENUM_NONE
111 
112 } orxMODULE_ID;
113 
114 
115 /* *** setup/init/exit/run function prototypes *** */
116 typedef orxSTATUS (orxFASTCALL *orxMODULE_INIT_FUNCTION) ();
117 typedef void (orxFASTCALL *orxMODULE_EXIT_FUNCTION) ();
118 typedef orxSTATUS (orxFASTCALL *orxMODULE_RUN_FUNCTION) ();
119 typedef void (orxFASTCALL *orxMODULE_SETUP_FUNCTION) ();
120 
121 
130 extern orxDLLAPI void orxFASTCALL orxModule_Register(orxMODULE_ID _eModuleID, const orxSTRING _zModuleName, const orxMODULE_SETUP_FUNCTION _pfnSetup, const orxMODULE_INIT_FUNCTION _pfnInit, const orxMODULE_EXIT_FUNCTION _pfnExit);
131 
136 extern orxDLLAPI void orxFASTCALL orxModule_AddDependency(orxMODULE_ID _eModuleID, orxMODULE_ID _eDependID);
137 
142 extern orxDLLAPI void orxFASTCALL orxModule_AddOptionalDependency(orxMODULE_ID _eModuleID, orxMODULE_ID _eDependID);
143 
148 extern orxDLLAPI orxSTATUS orxFASTCALL orxModule_Init(orxMODULE_ID _eModuleID);
149 
153 extern orxDLLAPI void orxFASTCALL orxModule_Exit(orxMODULE_ID _eModuleID);
154 
159 extern orxDLLAPI orxBOOL orxFASTCALL orxModule_IsInitialized(orxMODULE_ID _eModuleID);
160 
165 extern orxDLLAPI const orxSTRING orxFASTCALL orxModule_GetName(orxMODULE_ID _eModuleID);
166 
167 #endif /* _orxMODULE_H_ */
168 
orxDLLAPI void orxFASTCALL orxModule_Register(orxMODULE_ID _eModuleID, const orxSTRING _zModuleName, const orxMODULE_SETUP_FUNCTION _pfnSetup, const orxMODULE_INIT_FUNCTION _pfnInit, const orxMODULE_EXIT_FUNCTION _pfnExit)
orxDLLAPI void orxFASTCALL orxModule_AddOptionalDependency(orxMODULE_ID _eModuleID, orxMODULE_ID _eDependID)
orxMODULE_ID
Definition: orxModule.h:53
typedef orxSTATUS(orxFASTCALL *orxMODULE_INIT_FUNCTION)()
orxDLLAPI orxBOOL orxFASTCALL orxModule_IsInitialized(orxMODULE_ID _eModuleID)
orxSTATUS
Definition: orxType.h:243
orxDLLAPI void orxFASTCALL orxModule_Exit(orxMODULE_ID _eModuleID)
orxDLLAPI orxSTATUS orxFASTCALL orxModule_Init(orxMODULE_ID _eModuleID)
typedef void(orxFASTCALL *orxMODULE_EXIT_FUNCTION)()
#define orxDLLAPI
Definition: orxDecl.h:387
orxDLLAPI const orxSTRING orxFASTCALL orxModule_GetName(orxMODULE_ID _eModuleID)
orxDLLAPI void orxFASTCALL orxModule_AddDependency(orxMODULE_ID _eModuleID, orxMODULE_ID _eDependID)

Generated for orx by doxygen 1.5.6