PerformanceMonitorMacros.h
Go to the documentation of this file.
00001 // this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*-
00002 
00003 // -- BEGIN LICENSE BLOCK ----------------------------------------------
00004 // This file is part of FZIs ic_workspace.
00005 //
00006 // This program is free software licensed under the LGPL
00007 // (GNU LESSER GENERAL PUBLIC LICENSE Version 3).
00008 // You can find a copy of this license in LICENSE folder in the top
00009 // directory of the source code.
00010 //
00011 // © Copyright 2016 FZI Forschungszentrum Informatik, Karlsruhe, Germany
00012 //
00013 // -- END LICENSE BLOCK ------------------------------------------------
00014 
00015 //----------------------------------------------------------------------
00022 //----------------------------------------------------------------------
00023 
00024 #ifndef PERFORMANCEMONITORMACROS_H
00025 #define PERFORMANCEMONITORMACROS_H
00026 
00043 #ifdef IC_PERFORMANCE_MONITOR
00044 
00045 
00046   #define PERF_MON_INITIALIZE(num_names, num_events) \
00047     ::icl_core::perf_mon::PerformanceMonitor::initialize(num_names, num_events);
00048 
00050   #define PERF_MON_START(timer_name) \
00051     ::icl_core::perf_mon::PerformanceMonitor::start(timer_name);
00052 
00054   #define PERF_MON_ENABLE(prefix) \
00055     ::icl_core::perf_mon::PerformanceMonitor::enablePrefix(prefix);
00056 
00057   #define PERF_MON_DISABLE(prefix) \
00058     ::icl_core::perf_mon::PerformanceMonitor::disablePrefix(prefix);
00059 
00060   #define PERF_MON_ENABLE_ALL(enabled) \
00061     ::icl_core::perf_mon::PerformanceMonitor::enableAll(enabled);
00062 
00064   #define PERF_MON_PRINT_INFO(timer_name, description) \
00065     ::icl_core::perf_mon::PerformanceMonitor::measurement(timer_name, description, "", ::icl_core::logging::eLL_INFO);
00066 
00067   #define PERF_MON_PRINT_INFO_P(timer_name, description, prefix) \
00068     ::icl_core::perf_mon::PerformanceMonitor::measurement(timer_name, description, prefix, ::icl_core::logging::eLL_INFO);
00069 
00071   #define PERF_MON_PRINT_AND_RESET_INFO(timer_name, description) \
00072     ::icl_core::perf_mon::PerformanceMonitor::startStop(timer_name, description, "", ::icl_core::logging::eLL_INFO);
00073 
00074   #define PERF_MON_PRINT_AND_RESET_INFO_P(timer_name, description, prefix) \
00075     ::icl_core::perf_mon::PerformanceMonitor::startStop(timer_name, description, prefix, ::icl_core::logging::eLL_INFO);
00076 
00078   #define PERF_MON_ADD_STATIC_DATA(description, data) \
00079     ::icl_core::perf_mon::PerformanceMonitor::addStaticData(description, data, "");
00080 
00081   #define PERF_MON_ADD_STATIC_DATA_P(description, data, prefix) \
00082     ::icl_core::perf_mon::PerformanceMonitor::addStaticData(description, data, prefix);
00083 
00084   #define PERF_MON_ADD_DATA(description, data) \
00085     ::icl_core::perf_mon::PerformanceMonitor::addData(description, data, "");
00086 
00087   #define PERF_MON_ADD_DATA_P(description, data, prefix) \
00088     ::icl_core::perf_mon::PerformanceMonitor::addData(description, data, prefix);
00089 
00091   #define PERF_MON_ADD_DATA_NONTIME(description, data) \
00092     ::icl_core::perf_mon::PerformanceMonitor::addNonTimeData(description, data, "");
00093 
00094   #define PERF_MON_ADD_DATA_NONTIME_P(description, data, prefix) \
00095     ::icl_core::perf_mon::PerformanceMonitor::addNonTimeData(description, data, prefix);
00096 
00098   #define PERF_MON_SUMMARY_INFO(prefix, description) \
00099     ::icl_core::perf_mon::PerformanceMonitor::printSummary(prefix, description, ::icl_core::logging::eLL_INFO);
00100 
00101   #define PERF_MON_SUMMARY_PREFIX_INFO(prefix) \
00102     ::icl_core::perf_mon::PerformanceMonitor::printSummaryFromPrefix(prefix, ::icl_core::logging::eLL_INFO);
00103 
00104   #define PERF_MON_SUMMARY_ALL_INFO \
00105     ::icl_core::perf_mon::PerformanceMonitor::printSummaryAll(::icl_core::logging::eLL_INFO);
00106 
00107 
00108   // The following macros are the same as above, but for the DEBUG and TRACE case.
00109   #ifdef _IC_DEBUG_
00110     #define PERF_MON_PRINT_DEBUG(timer_name, description) \
00111       ::icl_core::perf_mon::PerformanceMonitor::measurement(timer_name, description, "", ::icl_core::logging::eLL_DEBUG);
00112     #define PERF_MON_PRINT_DEBUG_P(timer_name, description, prefix) \
00113       ::icl_core::perf_mon::PerformanceMonitor::measurement(timer_name, description, prefix, ::icl_core::logging::eLL_DEBUG);
00114     #define PERF_MON_PRINT_TRACE(timer_name, description) \
00115       ::icl_core::perf_mon::PerformanceMonitor::measurement(timer_name, description, "", ::icl_core::logging::eLL_TRACE);
00116     #define PERF_MON_PRINT_TRACE_P(timer_name, description, prefix) \
00117       ::icl_core::perf_mon::PerformanceMonitor::measurement(timer_name, description, prefix, ::icl_core::logging::eLL_TRACE);
00118     #define PERF_MON_PRINT_AND_RESET_DEBUG(timer_name, description) \
00119       ::icl_core::perf_mon::PerformanceMonitor::startStop(timer_name, description, "", ::icl_core::logging::eLL_DEBUG);
00120     #define PERF_MON_PRINT_AND_RESET_DEBUG_P(timer_name, description, prefix) \
00121       ::icl_core::perf_mon::PerformanceMonitor::startStop(timer_name, description, prefix, ::icl_core::logging::eLL_DEBUG);
00122     #define PERF_MON_PRINT_AND_RESET_TRACE(timer_name, description) \
00123       ::icl_core::perf_mon::PerformanceMonitor::startStop(timer_name, description, "", ::icl_core::logging::eLL_TRACE);
00124     #define PERF_MON_PRINT_AND_RESET_TRACE_P(timer_name, description, prefix) \
00125       ::icl_core::perf_mon::PerformanceMonitor::startStop(timer_name, description, prefix, ::icl_core::logging::eLL_TRACE);
00126     #define PERF_MON_SUMMARY_DEBUG(prefix, description) \
00127       ::icl_core::perf_mon::PerformanceMonitor::printSummary(prefix, description, ::icl_core::logging::eLL_DEBUG);
00128     #define PERF_MON_SUMMARY_TRACE(prefix, description) \
00129       ::icl_core::perf_mon::PerformanceMonitor::printSummary(prefix, description, ::icl_core::logging::eLL_TRACE);
00130     #define PERF_MON_SUMMARY_PREFIX_DEBUG(prefix) \
00131       ::icl_core::perf_mon::PerformanceMonitor::printSummaryFromPrefix(prefix, ::icl_core::logging::eLL_DEBUG);
00132     #define PERF_MON_SUMMARY_PREFIX_TRACE(prefix) \
00133       ::icl_core::perf_mon::PerformanceMonitor::printSummaryFromPrefix(prefix, ::icl_core::logging::eLL_TRACE);
00134     #define PERF_MON_SUMMARY_ALL_DEBUG \
00135       ::icl_core::perf_mon::PerformanceMonitor::printSummaryAll(::icl_core::logging::eLL_DEBUG);
00136     #define PERF_MON_SUMMARY_ALL_TRACE \
00137       ::icl_core::perf_mon::PerformanceMonitor::printSummaryAll(::icl_core::logging::eLL_TRACE);
00138   #else
00139     #define PERF_MON_PRINT_DEBUG(timer_name, description) (void)0
00140     #define PERF_MON_PRINT_DEBUG_P(timer_name, description, prefix) (void)0
00141     #define PERF_MON_PRINT_TRACE(timer_name, description) (void)0
00142     #define PERF_MON_PRINT_TRACE_P(timer_name, description, prefix) (void)0
00143     #define PERF_MON_PRINT_AND_RESET_DEBUG(timer_name, description) (void)0
00144     #define PERF_MON_PRINT_AND_RESET_DEBUG_P(timer_name, description, prefix) (void)0
00145     #define PERF_MON_PRINT_AND_RESET_TRACE(timer_name, description) (void)0
00146     #define PERF_MON_PRINT_AND_RESET_TRACE_P(timer_name, description, prefix) (void)0
00147     #define PERF_MON_SUMMARY_DEBUG(prefix, description) (void)0
00148     #define PERF_MON_SUMMARY_TRACE(prefix, description) (void)0
00149     #define PERF_MON_SUMMARY_PREFIX_DEBUG(prefix) (void)0
00150     #define PERF_MON_SUMMARY_PREFIX_TRACE(prefix) (void)0
00151     #define PERF_MON_SUMMARY_ALL_DEBUG(prefix, description) (void)0
00152     #define PERF_MON_SUMMARY_ALL_TRACE(prefix, description) (void)0
00153   #endif
00154 
00155 
00156 #else
00157   #define PERF_MON_INITIALIZE(num_names, num_events) (void)0
00158   #define PERF_MON_START(timer_name) (void)0
00159   #define PERF_MON_ENABLE(prefix) (void)0
00160   #define PERF_MON_DISABLE(prefix) (void)0
00161   #define PERF_MON_ENABLE_ALL(enabled) (void)0
00162   #define PERF_MON_SUMMARY(prefix, description) (void)0
00163   #define PERF_MON_PRINT_INFO(timer_name, description) (void)0
00164   #define PERF_MON_PRINT_INFO_P(timer_name, description, prefix) (void)0
00165   #define PERF_MON_PRINT_DEBUG(timer_name, description) (void)0
00166   #define PERF_MON_PRINT_DEBUG_P(timer_name, description, prefix) (void)0
00167   #define PERF_MON_PRINT_TRACE(timer_name, description) (void)0
00168   #define PERF_MON_PRINT_TRACE_P(timer_name, description, prefix) (void)0
00169   #define PERF_MON_PRINT_AND_RESET_INFO(timer_name, description) (void)0
00170   #define PERF_MON_PRINT_AND_RESET_INFO_P(timer_name, description, prefix) (void)0
00171   #define PERF_MON_PRINT_AND_RESET_DEBUG(timer_name, description) (void)0
00172   #define PERF_MON_PRINT_AND_RESET_DEBUG_P(timer_name, description, prefix) (void)0
00173   #define PERF_MON_PRINT_AND_RESET_TRACE(timer_name, description) (void)0
00174   #define PERF_MON_PRINT_AND_RESET_TRACE_P(timer_name, description, prefix) (void)0
00175   #define PERF_MON_SUMMARY_INFO(prefix, description) (void)0
00176   #define PERF_MON_SUMMARY_DEBUG(prefix, description) (void)0
00177   #define PERF_MON_SUMMARY_TRACE(prefix, description) (void)0
00178   #define PERF_MON_SUMMARY_PREFIX_INFO(prefix) (void)0
00179   #define PERF_MON_SUMMARY_PREFIX_DEBUG(prefix) (void)0
00180   #define PERF_MON_SUMMARY_PREFIX_TRACE(prefix) (void)0
00181   #define PERF_MON_SUMMARY_ALL_INFO (void)0
00182   #define PERF_MON_SUMMARY_ALL_DEBUG (void)0
00183   #define PERF_MON_SUMMARY_ALL_TRACE (void)0
00184   #define PERF_MON_ADD_STATIC_DATA(description, data) (void)0
00185   #define PERF_MON_ADD_STATIC_DATA_P(description, data, prefix) (void)0
00186   #define PERF_MON_ADD_DATA(description, data) (void)0
00187   #define PERF_MON_ADD_DATA_P(description, data, prefix) (void)0
00188   #define PERF_MON_ADD_DATA_NONTIME(description, data) (void)0
00189   #define PERF_MON_ADD_DATA_NONTIME_P(description, data, prefix) (void)0
00190 #endif
00191 
00192 #endif // PERFORMANCEMONITORMACROS_H


fzi_icl_core
Author(s):
autogenerated on Tue Aug 8 2017 02:28:03