mirror of https://gitee.com/bigwinds/arangodb
more macros
This commit is contained in:
parent
ea8277373b
commit
3e947bdca2
|
@ -44,28 +44,40 @@
|
|||
#define TRI_TIMER_NAME(name) timer ## name
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// @brief declare and initialise a timer
|
||||
/// @brief declare a timer
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define TRI_TIMER_INIT(name) double TRI_TIMER_NAME(name) = TRI_microtime();
|
||||
#define TRI_TIMER_DECLARE(name) double TRI_TIMER_NAME(name) = 0.0
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// @brief initialise a timer
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define TRI_TIMER_INIT(name) TRI_TIMER_NAME(name) = TRI_microtime()
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// @brief get the current value of a timer
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define TRI_TIMER_GET(name) (TRI_microtime() - TRI_TIMER_NAME(name))
|
||||
#define TRI_TIMER_CURRENT(name) (TRI_microtime() - TRI_TIMER_NAME(name))
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// @brief stop a timer
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define TRI_TIMER_STOP(name) TRI_TIMER_NAME(name) = TRI_TIMER_CURRENT(name)
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// @brief dump a timer to stdout
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define TRI_TIMER_DUMP(name) fprintf(stdout, "timer %s: %f\n", #name, TRI_TIMER_GET(name));
|
||||
#define TRI_TIMER_DUMP(name) fprintf(stdout, "timer %s: %f\n", #name, TRI_TIMER_NAME(name));
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// @brief log a timer value to the log in debug mode
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#define TRI_TIMER_LOG(name) LOG_DEBUG("timer %s: %f", #name, TRI_TIMER_GET(name));
|
||||
#define TRI_TIMER_LOG(name) LOG_DEBUG("timer %s: %f", #name, TRI_TIMER_NAME(name));
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
/// @}
|
||||
|
|
Loading…
Reference in New Issue