20 #ifndef LIBMESH_LIBMESH_LOGGING_H 21 #define LIBMESH_LIBMESH_LOGGING_H 31 #define TOKENPASTE(x, y) x ## y 32 #define TOKENPASTE2(x, y) TOKENPASTE(x, y) 99 #ifdef LIBMESH_ENABLE_PERFORMANCE_LOGGING 101 # define START_LOG(a,b) { libMesh::perflog.push(a,b); } 102 # define STOP_LOG(a,b) { libMesh::perflog.pop(a,b); } 103 #ifdef LIBMESH_ENABLE_DEPRECATED 104 # define PALIBMESH_USE_LOG(a,b) { libmesh_deprecated(); } 105 # define RESTART_LOG(a,b) { libmesh_deprecated(); } 107 # define LOG_SCOPE(a,b) libMesh::PerfItem TOKENPASTE2(perf_item_, __LINE__)(a,b); 108 # define LOG_SCOPE_IF(a,b,enabled) libMesh::PerfItem TOKENPASTE2(perf_item_, __LINE__)(a,b,enabled); 112 # define START_LOG(a,b) {} 113 # define STOP_LOG(a,b) {} 114 # define PALIBMESH_USE_LOG(a,b) {} 115 # define RESTART_LOG(a,b) {} 116 # define LOG_SCOPE(a,b) {} 117 # define LOG_SCOPE_IF(a,b,enabled) {} 125 #endif // LIBMESH_LIBMESH_LOGGING_H
void fast_push(const char *label, const char *header="")
PerfLog perflog("libMesh", #ifdef LIBMESH_ENABLE_PERFORMANCE_LOGGING true #else false #endif)
Responsible for timing and summarizing events.
void fast_pop(const char *label, const char *header="")
PerfItem(const char *label, const char *header, bool enabled=true)