OKVIS ROS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Static Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
okvis::timing::Timing Class Reference

#include <Timer.hpp>

Static Public Member Functions

static size_t getHandle (std::string const &tag)
 
static std::string getTag (size_t handle)
 
static double getTotalSeconds (size_t handle)
 
static double getTotalSeconds (std::string const &tag)
 
static double getMeanSeconds (size_t handle)
 
static double getMeanSeconds (std::string const &tag)
 
static size_t getNumSamples (size_t handle)
 
static size_t getNumSamples (std::string const &tag)
 
static double getVarianceSeconds (size_t handle)
 
static double getVarianceSeconds (std::string const &tag)
 
static double getMinSeconds (size_t handle)
 
static double getMinSeconds (std::string const &tag)
 
static double getMaxSeconds (size_t handle)
 
static double getMaxSeconds (std::string const &tag)
 
static double getHz (size_t handle)
 
static double getHz (std::string const &tag)
 
static void print (std::ostream &out)
 
static void reset (size_t handle)
 
static void reset (std::string const &tag)
 
static std::string print ()
 
static std::string secondsToTimeString (double seconds)
 

Private Types

typedef std::unordered_map
< std::string, size_t > 
map_t
 
typedef std::vector
< TimerMapValue
list_t
 

Private Member Functions

void addTime (size_t handle, double seconds)
 
 Timing ()
 
 ~Timing ()
 

Static Private Member Functions

static Timinginstance ()
 

Private Attributes

std::mutex addNewHandleMutex_
 
list_t m_timers
 
map_t m_tagMap
 
size_t m_maxTagLength
 

Friends

class Timer
 

Member Typedef Documentation

typedef std::vector<TimerMapValue> okvis::timing::Timing::list_t
private
typedef std::unordered_map<std::string,size_t> okvis::timing::Timing::map_t
private

Constructor & Destructor Documentation

okvis::timing::Timing::Timing ( )
private
okvis::timing::Timing::~Timing ( )
private

Member Function Documentation

void okvis::timing::Timing::addTime ( size_t  handle,
double  seconds 
)
private
size_t okvis::timing::Timing::getHandle ( std::string const &  tag)
static
double okvis::timing::Timing::getHz ( size_t  handle)
static
double okvis::timing::Timing::getHz ( std::string const &  tag)
static
double okvis::timing::Timing::getMaxSeconds ( size_t  handle)
static
double okvis::timing::Timing::getMaxSeconds ( std::string const &  tag)
static
double okvis::timing::Timing::getMeanSeconds ( size_t  handle)
static
double okvis::timing::Timing::getMeanSeconds ( std::string const &  tag)
static
double okvis::timing::Timing::getMinSeconds ( size_t  handle)
static
double okvis::timing::Timing::getMinSeconds ( std::string const &  tag)
static
size_t okvis::timing::Timing::getNumSamples ( size_t  handle)
static
size_t okvis::timing::Timing::getNumSamples ( std::string const &  tag)
static
std::string okvis::timing::Timing::getTag ( size_t  handle)
static
double okvis::timing::Timing::getTotalSeconds ( size_t  handle)
static
double okvis::timing::Timing::getTotalSeconds ( std::string const &  tag)
static
double okvis::timing::Timing::getVarianceSeconds ( size_t  handle)
static
double okvis::timing::Timing::getVarianceSeconds ( std::string const &  tag)
static
Timing & okvis::timing::Timing::instance ( )
staticprivate
void okvis::timing::Timing::print ( std::ostream &  out)
static
std::string okvis::timing::Timing::print ( )
static
void okvis::timing::Timing::reset ( size_t  handle)
static
void okvis::timing::Timing::reset ( std::string const &  tag)
static
std::string okvis::timing::Timing::secondsToTimeString ( double  seconds)
static

Friends And Related Function Documentation

friend class Timer
friend

Member Data Documentation

std::mutex okvis::timing::Timing::addNewHandleMutex_
private
size_t okvis::timing::Timing::m_maxTagLength
private
map_t okvis::timing::Timing::m_tagMap
private
list_t okvis::timing::Timing::m_timers
private

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