Main MRPT website > C++ reference for MRPT 1.5.7
List of all members | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
MyGlobalProfiler Struct Reference

Detailed Description

Definition at line 23 of file CTimeLogger.cpp.

Inheritance diagram for MyGlobalProfiler:
Inheritance graph

Public Member Functions

 MyGlobalProfiler ()
 
 ~MyGlobalProfiler ()
 
std::string getStatsAsText (const size_t column_width=80) const
 Dump all stats to a multi-line text string. More...
 
void getStats (std::map< std::string, TCallStats > &out_stats) const
 Returns all the current stats as a map: section_name => stats. More...
 
void dumpAllStats (const size_t column_width=80) const
 Dump all stats through the COutputLogger interface. More...
 
void clear (bool deep_clear=false)
 Resets all stats. By default (deep_clear=false), all section names are remembered (not freed) so the cost of creating upon the first next call is avoided. More...
 
void enable (bool enabled=true)
 
void disable ()
 
bool isEnabled () const
 
void saveToCSVFile (const std::string &csv_file) const
 Dump all stats to a Comma Separated Values (CSV) file. More...
 
void registerUserMeasure (const char *event_name, const double value)
 
void setName (const std::string &name)
 
void enter (const char *func_name)
 Start of a named section. More...
 
double leave (const char *func_name)
 End of a named section. More...
 
double getMeanTime (const std::string &name) const
 Return the mean execution time of the given "section", or 0 if it hasn't ever been called "enter" with that section name. More...
 
double getLastTime (const std::string &name) const
 Return the last execution time of the given "section", or 0 if it hasn't ever been called "enter" with that section name. More...
 

Protected Types

typedef mrpt::utils::ts_hash_map< std::string, TCallData, 1, 10 > TDataMap
 

Protected Member Functions

void do_enter (const char *func_name)
 
double do_leave (const char *func_name)
 

Protected Attributes

TDataMap m_data
 

Member Typedef Documentation

◆ TDataMap

Definition at line 59 of file CTimeLogger.h.

Constructor & Destructor Documentation

◆ MyGlobalProfiler()

MyGlobalProfiler::MyGlobalProfiler ( )
inline

Definition at line 25 of file CTimeLogger.cpp.

◆ ~MyGlobalProfiler()

MyGlobalProfiler::~MyGlobalProfiler ( )
inline

Definition at line 28 of file CTimeLogger.cpp.

Member Function Documentation

◆ clear()

void CTimeLogger::clear ( bool  deep_clear = false)
inherited

Resets all stats. By default (deep_clear=false), all section names are remembered (not freed) so the cost of creating upon the first next call is avoided.

Definition at line 107 of file CTimeLogger.cpp.

References mrpt::utils::CTimeLogger::m_data.

◆ disable()

void mrpt::utils::CTimeLogger::disable ( )
inlineinherited

◆ do_enter()

void CTimeLogger::do_enter ( const char *  func_name)
protectedinherited

◆ do_leave()

double CTimeLogger::do_leave ( const char *  func_name)
protectedinherited

◆ dumpAllStats()

void CTimeLogger::dumpAllStats ( const size_t  column_width = 80) const
inherited

Dump all stats through the COutputLogger interface.

See also
getStatsAsText, saveToCVSFile

Definition at line 212 of file CTimeLogger.cpp.

References mrpt::utils::CTimeLogger::getStatsAsText(), and MRPT_LOG_INFO_STREAM.

Referenced by mrpt::utils::CTimeLogger::~CTimeLogger().

◆ enable()

void mrpt::utils::CTimeLogger::enable ( bool  enabled = true)
inlineinherited

◆ enter()

void mrpt::utils::CTimeLogger::enter ( const char *  func_name)
inlineinherited

◆ getLastTime()

double CTimeLogger::getLastTime ( const std::string name) const
inherited

Return the last execution time of the given "section", or 0 if it hasn't ever been called "enter" with that section name.

Definition at line 294 of file CTimeLogger.cpp.

References mrpt::utils::CTimeLogger::m_data.

Referenced by mrpt::nav::CAbstractPTGBasedReactive::performNavigationStep(), and mrpt::nav::CAbstractPTGBasedReactive::STEP8_GenerateLogRecord().

◆ getMeanTime()

double CTimeLogger::getMeanTime ( const std::string name) const
inherited

Return the mean execution time of the given "section", or 0 if it hasn't ever been called "enter" with that section name.

Definition at line 287 of file CTimeLogger.cpp.

References mrpt::utils::CTimeLogger::m_data.

◆ getStats()

void CTimeLogger::getStats ( std::map< std::string, TCallStats > &  out_stats) const
inherited

◆ getStatsAsText()

std::string CTimeLogger::getStatsAsText ( const size_t  column_width = 80) const
inherited

◆ isEnabled()

bool mrpt::utils::CTimeLogger::isEnabled ( ) const
inlineinherited

◆ leave()

double mrpt::utils::CTimeLogger::leave ( const char *  func_name)
inlineinherited

◆ registerUserMeasure()

void CTimeLogger::registerUserMeasure ( const char *  event_name,
const double  value 
)
inherited

◆ saveToCSVFile()

void CTimeLogger::saveToCSVFile ( const std::string csv_file) const
inherited

Dump all stats to a Comma Separated Values (CSV) file.

See also
dumpAllStats

Definition at line 194 of file CTimeLogger.cpp.

References mrpt::format(), mrpt::utils::CTimeLogger::m_data, and mrpt::utils::CStream::printf().

◆ setName()

void mrpt::utils::CTimeLogger::setName ( const std::string name)
inlineinherited

Definition at line 94 of file CTimeLogger.h.

Member Data Documentation

◆ m_data

TDataMap mrpt::utils::CTimeLogger::m_data
protectedinherited



Page generated by Doxygen 1.8.14 for MRPT 1.5.7 Git: 5902e14cc Wed Apr 24 15:04:01 2019 +0200 at lun oct 28 01:39:17 CET 2019