7#ifndef ATHENAKERNEL_GETMESSAGESVC_H
8#define ATHENAKERNEL_GETMESSAGESVC_H 1
52 void reportMessage(IMessageSvc* ims,
const std::string &source,
int type,
const std::string &message);
53 int outputLevel(
const IMessageSvc* ims,
const std::string &source);
54 void setOutputLevel(IMessageSvc* ims,
const std::string &source,
int level);
87 operator IMessageSvc*() {
return this->
get(); }
~IMessageSvcHolder()
releases the IMessageSvc
IMessageSvcHolder()
will take the IMessageSvc* lazily from getMessageSvc() in get() Slow, but useful for classes without ...
IMessageSvcHolder & operator=(const IMessageSvcHolder &)
IMessageSvc * get()
upon first access sets m_ims as needed
Some weak symbol referencing magic... These are declared in AthenaKernel/getMessageSvc....
IMessageSvc * getMessageSvc(bool quiet=false)
int outputLevel(const IMessageSvc *ims, const std::string &source)
void reportMessage(IMessageSvc *ims, const std::string &source, int type, const std::string &message)
Wrappers for some of the IMessageSvc methods These can be used from libraries without explicit Gaudi ...
std::atomic< bool > getMessageSvcQuiet
Set this to force off the warning messages from getMessageSvc (in unit tests, for example).
void setOutputLevel(IMessageSvc *ims, const std::string &source, int level)