24 #ifndef __UTILS_TIME_TRACKER_H_ 25 #define __UTILS_TIME_TRACKER_H_ 42 TimeTracker(
const char *filename,
bool add_default_class =
false);
46 unsigned int add_class(std::string name);
47 void remove_class(
unsigned int cls);
49 void ping(
unsigned int cls);
50 void ping_start(
unsigned int cls);
51 void ping_end(
unsigned int cls);
52 void ping_abort(
unsigned int cls);
54 void ping(std::string comment =
"");
55 void reset(std::string comment =
"");
56 void print_to_stdout();
61 void average_and_deviation(std::vector<struct timeval *> &values,
62 double &average_sec,
double &average_ms,
63 double &deviation_sec,
double &deviation_ms);
68 std::vector<std::vector<struct timeval *> > __class_times;
69 std::vector<std::string> __class_names;
70 std::vector<struct timeval *> __times;
71 std::map<unsigned int, std::string> __comments;
72 std::vector<struct timeval *>::iterator __time_it;
73 std::map<unsigned int, std::string>::iterator __comment_it;
74 std::string __tracker_comment;
76 unsigned int __write_cycle;
Fawkes library namespace.
static const unsigned int DEFAULT_CLASS
The default tracking class.
Scoped time tracking for specific item.