1 #ifndef _ots_Utilities_Macro_h_
2 #define _ots_Utilities_Macro_h_
10 #define __SHORTFILE__ (strstr(&__FILE__[0], "/srcs/") ? strstr(&__FILE__[0], "/srcs/") + 6 : __FILE__)
13 #define __FILENAME__ (strrchr(__FILE__, '/') ? strrchr(__FILE__, '/') + 1 : __FILE__)
15 #define __E__ std::endl
18 #define __COUT_HDR_FL__ __SHORTFILE__ << " [" << std::dec << __LINE__ << "]\t"
19 #define __COUT_HDR_FP__ __SHORTFILE__ << " : " << __PRETTY_FUNCTION__ << "\t"
20 #define __COUT_HDR_PL__ __PRETTY_FUNCTION__ << " [" << std::dec << __LINE__ << "]\t"
21 #define __COUT_HDR_F__ __SHORTFILE__ << "\t"
22 #define __COUT_HDR_L__ std::dec << __LINE__ << "\t"
23 #define __COUT_HDR_P__ __PRETTY_FUNCTION__ << "\t"
24 #define __COUT_HDR__ __COUT_HDR_FL__
27 #define __COUT_TYPE__(X) std::cout << QUOTE(X) << ":" << __MF_SUBJECT__ << ":"
29 #define __COUT_ERR__ __COUT_TYPE__(LogError) << __COUT_HDR__
30 #define __COUT_WARN__ __COUT_TYPE__(LogWarning) << __COUT_HDR__
31 #define __COUT_INFO__ __COUT_TYPE__(LogInfo) << __COUT_HDR__
32 #define __COUT__ __COUT_TYPE__(LogDebug) << __COUT_HDR__
33 #define __COUTV__(X) __COUT__ << QUOTE(X) << " = " << X << __E__
40 #define __MF_SUBJECT__ "ots" //default subject.. others can #undef and re-#define
46 #define __MF_TYPE__(X) mf::X (__MF_SUBJECT__)
50 #define __MF_HDR__ __COUT_HDR_FL__
51 #define __MOUT_ERR__ __MF_TYPE__(LogError) << __MF_HDR__
52 #define __MOUT_WARN__ __MF_TYPE__(LogWarning) << __MF_HDR__
53 #define __MOUT_INFO__ __MF_TYPE__(LogInfo) << __MF_HDR__
54 #define __MOUT__ __MF_TYPE__(LogDebug) << __MF_HDR__
55 #define __MOUTV__(X) __MOUT__ << QUOTE(X) << " = " << X
59 #define __SS__ std::stringstream ss; ss << __MF_HDR__
60 #define __SS_THROW__ __COUT_ERR__ << "\n" << ss.str(); throw std::runtime_error(ss.str())
65 #define __CFG_COUT_TYPE__(X) std::cout << QUOTE(X) << ":" << __MF_SUBJECT__ << "-" << theConfigurationRecordName_ << ":"
66 #define __CFG_MF_TYPE__(X) mf::X (std::string(__MF_SUBJECT__) + theConfigurationRecordName_)
68 #define __CFG_MOUT_ERR__ __CFG_MF_TYPE__(LogError) << __MF_HDR__
69 #define __CFG_MOUT_WARN__ __CFG_MF_TYPE__(LogWarning) << __MF_HDR__
70 #define __CFG_MOUT_INFO__ __CFG_MF_TYPE__(LogInfo) << __MF_HDR__
71 #define __CFG_MOUT__ __CFG_MF_TYPE__(LogDebug) << __MF_HDR__
72 #define __CFG_MOUTV__(X) __CFG_MOUT__ << QUOTE(X) << " = " << X
73 #define __CFG_COUT_ERR__ __CFG_COUT_TYPE__(LogError) << __COUT_HDR__
74 #define __CFG_COUT_WARN__ __CFG_COUT_TYPE__(LogWarning) << __COUT_HDR__
75 #define __CFG_COUT_INFO__ __CFG_COUT_TYPE__(LogInfo) << __COUT_HDR__
76 #define __CFG_COUT__ __CFG_COUT_TYPE__(LogDebug) << __COUT_HDR__
77 #define __CFG_COUTV__(X) __CFG_COUT__ << QUOTE(X) << " = " << X << __E__
84 #define XDAQ_CONST_CALL
86 #define XDAQ_CONST_CALL const