module.h

Go to the documentation of this file.
00001 
00064 #ifndef CFG_MODULE_H
00065 #define CFG_MODULE_H
00066 
00067 #include <cfg/debug.h>
00068 
00074 #define MOD_DEFINE(module)   DB(extern bool module ## _initialized; bool module ## _initialized;)
00075 
00085 #define MOD_CHECK(module) \
00086 do { \
00087     DB(extern bool module ## _initialized;) \
00088     ASSERT(module ## _initialized); \
00089 } while (0)
00090 
00103 #define MOD_INIT(module) \
00104 do { \
00105     ASSERT(!module ## _initialized); \
00106     DB(module ## _initialized = true;) \
00107 } while (0)
00108 
00117 #define MOD_CLEANUP(module) \
00118 do { \
00119     ASSERT(module ## _initialized); \
00120     DB(module ## _initialized = false;) \
00121 } while (0)
00122 
00123 #endif /* CFG_MODULE_H */
00124