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
00124