ATLAS Offline Software
Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStreamMacros.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // MsgStreamMacros.h (shamelessly copied from AthMsgStreamMacros.h)
8 // Header file for useful macros when comes to using MsgStream.
9 // Note: the macros here are called TRG_MSG_XYZ instead of ATH_MSG_XYZ.
10 // This is to avoid clashes with the identical macros in AtlasCore.
11 //
12 // Original author: S.Binet<binet@cern.ch>
14 #ifndef TRIGCONFBASE_MSGSTREAMMACROS_H
15 #define TRIGCONFBASE_MSGSTREAMMACROS_H 1
16 
17 // FIXME: operator precedence ?!
18 #define TRG_MSG_LVL_NOCHK(lvl, x) \
19  this->msg(lvl) << x << TrigConf::endmsgtc
20 
21 #define TRG_MSG_LVL(lvl, x) \
22  if (this->msgLvl (lvl)) {TRG_MSG_LVL_NOCHK(lvl, x);}
23 
24 #define TRG_MSG_VERBOSE(x) TRG_MSG_LVL(TrigConf::MSGTC::VERBOSE, x)
25 #define TRG_MSG_DEBUG(x) TRG_MSG_LVL(TrigConf::MSGTC::DEBUG, x)
26 // note that we are using the _NOCHK variant here
27 #define TRG_MSG_INFO(x) TRG_MSG_LVL_NOCHK(TrigConf::MSGTC::INFO, x)
28 #define TRG_MSG_WARNING(x) TRG_MSG_LVL_NOCHK(TrigConf::MSGTC::WARNING, x)
29 #define TRG_MSG_ERROR(x) TRG_MSG_LVL_NOCHK(TrigConf::MSGTC::ERROR, x)
30 #define TRG_MSG_FATAL(x) TRG_MSG_LVL_NOCHK(TrigConf::MSGTC::FATAL, x)
31 #define TRG_MSG_ALWAYS(x) TRG_MSG_LVL_NOCHK(TrigConf::MSGTC::ALWAYS, x)
32 
33 // can be used like so: TRG_MSG(INFO) << "hello" << endmsg;
34 #define TRG_MSG(lvl) \
35  if (this->msgLvl(TrigConf::MSGTC::lvl)) this->msg(TrigConf::MSGTC::lvl)
36 
37 #endif //> !TRIGCONFBASE_MSGSTREAMMACROS_H
38