Logo
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
context_singleton.hh
Go to the documentation of this file.
1 #pragma once
2 #include "context.hh"
3 
4 extern Context& context;
5 
6 #define PANIC(X, ...) context.logger->panic(X, ##__VA_ARGS__ )
7 #define ERROR(X, ...) context.logger->error(X, ##__VA_ARGS__ )
8 #define WARN(X, ...) context.logger->warn(X, ##__VA_ARGS__)
9 #define INFO(X, ...) context.logger->info(X, ##__VA_ARGS__)
10 #define DEBUG(X, ...) context.logger->debug(X, ##__VA_ARGS__)
11 
12 #define GET_INT(X) context.settings.get<int>(X)
13 #define GET_STR(X) context.settings.get<std::string>(X)
14 #define GET_VEC_STR(X) context.settings.get<std::vector<std::string>>(X)
15 #define GET_BOOL(X) (GET_STR(X) == "true" ? true : false)
16 #define GET_INDEX(X) context.histogram->get_index(X)
17 #define GET_INDEX_IN_BOUNDARY(X) context.histogram->random_within_boundaries(X)
Definition: context.hh:11
Context & context
Definition: context_singleton.cc:4