5#ifndef _ZFI_ZFCoreStaticRegister_h_
6#define _ZFI_ZFCoreStaticRegister_h_
12#if _ZFP_ZFCoreStaticRegister_DEBUG
14 #define _ZFP_ZFCoreStaticRegister_invokeTimeLogger(fmt, ...) \
15 zfimplInvokeTimeLogger("[ZFSR] " fmt \
19 #define _ZFP_ZFCoreStaticRegister_invokeTimeLogger(fmt, ...)
43#define ZF_STATIC_REGISTER_INIT(Name) \
45 zfclassNotPOD _ZFP_R_##Name { \
47 typedef _ZFP_R_##Name zfself; \
51#define ZF_STATIC_REGISTER_DESTROY(Name) \
54#define ZF_STATIC_REGISTER_END(Name) \
56 static _ZFP_R_##Name _ZFP_RI_##Name; \
59#define ZF_STATIC_REGISTER_INSTANCE(Name) \
62#if _ZFP_ZFCoreStaticRegister_DEBUG
63 #undef ZF_STATIC_REGISTER_INIT
64 #undef ZF_STATIC_REGISTER_DESTROY
65 #undef ZF_STATIC_REGISTER_END
67 #define ZF_STATIC_REGISTER_INIT(Name) \
69 zfclassNotPOD _ZFP_R_##Name { \
71 typedef _ZFP_R_##Name zfself; \
73 _ZFP_R_##Name(void) { \
74 _ZFP_ZFCoreStaticRegister_invokeTimeLogger("reg: %s", #Name); \
78 #define ZF_STATIC_REGISTER_DESTROY(Name) \
79 ~_ZFP_R_##Name(void) { \
80 _ZFP_ZFCoreStaticRegister_invokeTimeLogger("unreg: %s", #Name); \
83 void _ZFP_R_Unreg(void)
84 #define ZF_STATIC_REGISTER_END(Name) \
86 static _ZFP_R_##Name _ZFP_RI_##Name; \
#define ZF_NAMESPACE_GLOBAL_BEGIN
begin namespace ZFFramework
Definition ZFNamespace.h:97
#define ZF_NAMESPACE_GLOBAL_END
end namespace ZFFramework
Definition ZFNamespace.h:98
minimal log util for internal debug use only