mlpack  3.4.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
Timers Class Reference

Public Member Functions

 Timers ()
 Default to disabled. More...
 
std::atomic< bool > & Enabled ()
 Modify whether or not timing is enabled. More...
 
bool Enabled () const
 Get whether or not timing is enabled. More...
 
std::map< std::string,
std::chrono::microseconds > 
GetAllTimers ()
 Returns a copy of all the timers used via this interface. More...
 
bool GetState (const std::string &timerName, const std::thread::id &threadId=std::thread::id())
 Returns state of the given timer. More...
 
std::chrono::microseconds GetTimer (const std::string &timerName)
 Returns a copy of the timer specified. More...
 
void PrintTimer (const std::string &timerName)
 Prints the specified timer. More...
 
void Reset ()
 Reset the timers. More...
 
void StartTimer (const std::string &timerName, const std::thread::id &threadId=std::thread::id())
  * Initializes a timer, available like a normal value specified on  * the command line. More...
 
void StopAllTimers ()
 Stop all timers. More...
 
void StopTimer (const std::string &timerName, const std::thread::id &threadId=std::thread::id())
  * Halts the timer, and replaces its value with the delta time from its start. More...
 

Detailed Description

Definition at line 97 of file timers.hpp.

Constructor & Destructor Documentation

Timers ( )
inline

Default to disabled.

Definition at line 101 of file timers.hpp.

Member Function Documentation

std::atomic<bool>& Enabled ( )
inline

Modify whether or not timing is enabled.

Definition at line 166 of file timers.hpp.

bool Enabled ( ) const
inline

Get whether or not timing is enabled.

Definition at line 168 of file timers.hpp.

std::map<std::string, std::chrono::microseconds> GetAllTimers ( )

Returns a copy of all the timers used via this interface.

Referenced by mlpack::bindings::cli::EndProgram().

bool GetState ( const std::string timerName,
const std::thread::id &  threadId = std::thread::id() 
)

Returns state of the given timer.

Parameters
timerNameThe name of the timer in question.
threadIdId of the thread accessing the timer.
std::chrono::microseconds GetTimer ( const std::string timerName)

Returns a copy of the timer specified.

This contains the sum of the timing results for timers that have been stopped with this name.

Parameters
timerNameThe name of the timer in question.
void PrintTimer ( const std::string timerName)

Prints the specified timer.

If it took longer than a minute to complete the timer will be displayed in days, hours, and minutes as well.

Parameters
timerNameThe name of the timer in question.

Referenced by mlpack::bindings::cli::EndProgram().

void Reset ( )

Reset the timers.

This stops all running timers and removes them. Whether or not timing is enabled will not be changed.

Referenced by mlpack::util::ResetTimers().

void StartTimer ( const std::string timerName,
const std::thread::id &  threadId = std::thread::id() 
)

 * Initializes a timer, available like a normal value specified on  * the command line.

  Timers are of type timeval. If a timer is started, then stopped, then re-started, then stopped, the final timer value will be the length of both runs of the timer.  *  *

Parameters
timerNameThe name of the timer in question.
threadIdId of the thread accessing the timer.  
void StopAllTimers ( )

Stop all timers.

Referenced by mlpack::bindings::cli::EndProgram().

void StopTimer ( const std::string timerName,
const std::thread::id &  threadId = std::thread::id() 
)

 * Halts the timer, and replaces its value with the delta time from its start.

  *   *

Parameters
timerNameThe name of the timer in question.
threadIdId of the thread accessing the timer.  

The documentation for this class was generated from the following file: