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