00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef H_LIBTHROWABLE_TRACE
00021 #define H_LIBTHROWABLE_TRACE
00022 #include <libthrowable/macros/unique_id.h>
00023 #include <libthrowable/macros/here.h>
00024 #include <libthrowable/trace_point.h>
00025
00026 #ifndef LIBTHROWABLE_DISABLE_MACROS
00027
00028 #ifdef LIBTHROWABLE_NDEBUG
00029 #define LIBTHROWABLE_NTRACE
00030 #endif //LIBTHROWABLE_NDEBUG
00031
00032 #ifndef LIBTHROWABLE_NTRACE
00033
00038 #define LIBTHROWABLE_TRACE() \
00039 libthrowable::TracePoint LIBTHROWABLE_UNIQUE_ID(LIBTHROWABLE_HERE)
00040
00048 #define LIBTHROWABLE_TRACE_MSG(message) \
00049 libthrowable::TracePoint LIBTHROWABLE_UNIQUE_ID(LIBTHROWABLE_HERE, (message))
00050
00069 #define LIBTHROWABLE_TRACE_VAR(variable) \
00070 libthrowable::TracePoint LIBTHROWABLE_UNIQUE_ID(LIBTHROWABLE_HERE, (variable), #variable)
00071
00072 #else //#ifndef LIBTHROWABLE_NTRACE
00073 #define LIBTHROWABLE_TRACE() \
00074 do { } while(0)
00075 #define LIBTHROWABLE_TRACE_MSG(message) \
00076 do { } while(0)
00077 #define LIBTHROWABLE_TRACE_VAR(variable) \
00078 do { } while(0)
00079
00080 #endif //LIBTHROWABLE_NTRACE
00081 #endif //LIBTHROWABLE_DISABLE_MACROS
00082 #endif //H_LIBTHROWABLE_TRACE