1 #ifndef GAUDIKERNEL_AUDITOR_H
2 #define GAUDIKERNEL_AUDITOR_H
63 void before(StandardEventType,
const std::string&)
override;
66 void before(CustomEventTypeRef,
const std::string&)
override;
69 void after(StandardEventType,
const std::string&,
const StatusCode&)
override;
72 void after(CustomEventTypeRef,
const std::string&,
const StatusCode&)
override;
97 const std::string&
name()
const override;
99 bool isEnabled()
const override;
111 auto ptr = serviceLocator()->service<T>(
name, createIf);
121 template <
class T = IService>
123 return serviceLocator()->service<T>(
name, createIf);
190 template <
class TYPE>
233 const std::string& doc =
"none")
const {
234 return m_PropertyMgr->declareProperty(name, property, doc);
255 #ifndef GAUDI_NEW_PLUGIN_SERVICE
260 template <
typename S,
typename... Args>
262 return new T(std::forward<Args>(
args)...);
268 #define DECLARE_AUDITOR_FACTORY(x) \
269 DECLARE_FACTORY_WITH_CREATOR(x, AudFactory< x >, Auditor::Factory)
270 #define DECLARE_NAMESPACE_AUDITOR_FACTORY(n, x) \
271 DECLARE_AUDITOR_FACTORY(n::x)
276 #define DECLARE_AUDITOR_FACTORY(x) DECLARE_COMPONENT(x)
277 #define DECLARE_NAMESPACE_AUDITOR_FACTORY(n, x) DECLARE_COMPONENT(n::x)
281 #endif //GAUDIKERNEL_AUDITOR_H
StatusCode setProperty(IProperty *component, const std::string &name, const TYPE &value, const std::string &doc)
simple function to set the property of the given object from the value
bool m_isEnabled
Auditor is enabled flag.
StatusCode service(const std::string &name, T *&svc, bool createIf=false) const
Access a service by name, creating it if it doesn't already exist.
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
GAUDI_API bool hasProperty(const IProperty *p, const std::string &name)
simple function which check the existence of the property with the given name.
const char *PyHelper() getProperty(IInterface *p, char *name)
std::string m_name
Auditor's name for identification.
Property * declareProperty(const std::string &name, T &property, const std::string &doc="none") const
Declare the named property.
bool m_isInitialized
Auditor has been initialized flag.
SmartIF< ISvcLocator > m_pSvcLocator
Pointer to service locator service.
Gaudi::PluginService::Factory< IAuditor *, const std::string &, ISvcLocator * > Factory
General service interface definition.
This class is used for returning status codes from appropriate routines.
The IMessage is the interface implemented by the message service.
bool PyHelper() setProperty(IInterface *p, char *name, char *value)
Base class from which all concrete algorithm classes should be derived.
IInterface compliant class extending IInterface with the name() method.
Property base class allowing Property* collections to be "homogeneous".
Class wrapping the signature for a factory with any number of arguments.
SmartIF< PropertyMgr > m_PropertyMgr
For management of properties.
static S::ReturnType create(Args &&...args)
The IAuditor is the interface implmented by the AlgAuditor base class.
SmartIF< T > service(const std::string &name, bool createIf=false) const
int m_outputLevel
Auditor output level.
Base class from which all concrete auditor classes should be derived.
bool m_isFinalized
Auditor has been finalized flag.