carl  24.04
Computer ARithmetic Library
carl-statistics.h
Go to the documentation of this file.
1 /**
2  * @file
3  *
4  * A small wrapper that makes using statistics easier in carl.
5  *
6  *
7  * Note that this header should *not* be included if you want to use the carl
8  * statistics facilities yourself. To do that, include Statistics.h and create
9  * statistics macros like below for your own application.
10  *
11  */
12 
13 #pragma once
14 
15 #include "config.h"
16 #include "Statistics.h"
17 
18 namespace carl {
19 namespace statistics {
20 
21 #ifdef CARL_DEVOPTION_Statistics
22  #define CARL_INIT_STATISTICS(class, variable, name) class& variable = carl::statistics::get<class>(name)
23  #define CARL_CALL_STATISTICS(function) function
24  #define CARL_TIME_START(variable) auto variable = carl::statistics::Timer::start()
25  #define CARL_TIME_FINISH(timer, variable) timer.finish(variable)
26 #else
27  #define CARL_INIT_STATISTICS(class, variable, name)
28  #define CARL_CALL_STATISTICS(function)
29  #define CARL_TIME_START(variable)
30  #define CARL_TIME_FINISH(timer, start)
31 #endif
32 
33 
34 }
35 }
carl is the main namespace for the library.