Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  master (f31105fd)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
IAuditor Class Referenceabstract

#include <GaudiKernel/IAuditor.h>

Inheritance diagram for IAuditor:
Collaboration diagram for IAuditor:

Public Types

enum  StandardEventType {
  Initialize, ReInitialize, Execute, Finalize,
  Start, Stop, ReStart
}
 Defines the standard (= used by the framework) auditable event types. More...
 
typedef std::string CustomEventType
 Type used to allow users to specify a custom event to be audit. More...
 
typedef const CustomEventTypeCustomEventTypeRef
 Used in function calls for optimization purposes. More...
 
- Public Types inherited from IInterface
enum  Status : StatusCode::code_t {
  Status::FAILURE = 0, Status::SUCCESS = 1, Status::NO_INTERFACE, Status::VERSMISMATCH,
  Status::LAST_ERROR
}
 Return status. More...
 
using iid = Gaudi::InterfaceId< IInterface, 0, 0 >
 Interface ID. More...
 
using ext_iids = Gaudi::interface_list< iid >
 Extra interfaces. More...
 

Public Member Functions

 DeclareInterfaceID (IAuditor, 4, 0)
 InterfaceID. More...
 
virtual void before (StandardEventType, INamedInterface *)=0
 Audit the start of a standard "event". More...
 
virtual void before (StandardEventType, const std::string &)=0
 Audit the start of a standard "event" for callers that do not implement INamedInterface. More...
 
virtual void before (CustomEventTypeRef, INamedInterface *)=0
 Audit the start of a custom "event". More...
 
virtual void before (CustomEventTypeRef, const std::string &)=0
 Audit the start of a custom "event" for callers that do not implement INamedInterface. More...
 
virtual void after (StandardEventType, INamedInterface *, const StatusCode &sc=StatusCode::SUCCESS)=0
 Audit the end of a standard "event". More...
 
virtual void after (StandardEventType, const std::string &, const StatusCode &sc=StatusCode::SUCCESS)=0
 Audit the end of a standard "event" for callers that do not implement INamedInterface. More...
 
virtual void after (CustomEventTypeRef, INamedInterface *, const StatusCode &sc=StatusCode::SUCCESS)=0
 Audit the end of a custom "event". More...
 
virtual void after (CustomEventTypeRef, const std::string &, const StatusCode &sc=StatusCode::SUCCESS)=0
 Audit the end of a custom "event" for callers that do not implement INamedInterface. More...
 
virtual bool isEnabled () const =0
 Tell if the auditor is enabled or not. More...
 
virtual StatusCode sysInitialize ()=0
 Used by AuditorSvc. More...
 
virtual StatusCode sysFinalize ()=0
 Used by AuditorSvc. More...
 
- Public Member Functions inherited from INamedInterface
 DeclareInterfaceID (INamedInterface, 1, 0)
 InterfaceID. More...
 
virtual const std::stringname () const =0
 Retrieve the name of the instance. More...
 
- Public Member Functions inherited from IInterface
virtual void * i_cast (const InterfaceID &) const =0
 main cast function More...
 
virtual std::vector< std::stringgetInterfaceNames () const =0
 Returns a vector of strings containing the names of all the implemented interfaces. More...
 
virtual unsigned long addRef ()=0
 Increment the reference count of Interface instance. More...
 
virtual unsigned long release ()=0
 Release Interface instance. More...
 
virtual unsigned long refCount () const =0
 Current reference count. More...
 
virtual StatusCode queryInterface (const InterfaceID &ti, void **pp)=0
 Set the void** to the pointer to the requested interface of the instance. More...
 
virtual ~IInterface ()=default
 Virtual destructor. More...
 

Friends

const char * toStr (IAuditor::StandardEventType e)
 Simple mapping function from IAuditor::StandardEventType to string. More...
 
std::ostreamoperator<< (std::ostream &s, IAuditor::StandardEventType e)
 

Additional Inherited Members

- Static Public Member Functions inherited from IInterface
static const InterfaceIDinterfaceID ()
 Return an instance of InterfaceID identifying the interface. More...
 

Detailed Description

The IAuditor is the interface implemented by the Auditor base class. Concrete auditors, derived from the Auditor base class are controlled via this interface.

Author
Marjorie Shapiro, LBNL
Marco Clemencic marco.nosp@m..cle.nosp@m.menci.nosp@m.c@ce.nosp@m.rn.ch

Definition at line 27 of file IAuditor.h.

Member Typedef Documentation

◆ CustomEventType

Type used to allow users to specify a custom event to be audit.

Examples of custom events are callbacks (see patch #1725).

Definition at line 45 of file IAuditor.h.

◆ CustomEventTypeRef

Used in function calls for optimization purposes.

Definition at line 47 of file IAuditor.h.

Member Enumeration Documentation

◆ StandardEventType

Defines the standard (= used by the framework) auditable event types.

Enumerator
Initialize 
ReInitialize 
Execute 
Finalize 
Start 
Stop 
ReStart 

Definition at line 33 of file IAuditor.h.

Member Function Documentation

◆ after() [1/4]

virtual void IAuditor::after ( CustomEventTypeRef  ,
const std::string ,
const StatusCode sc = StatusCode::SUCCESS 
)
pure virtual

Audit the end of a custom "event" for callers that do not implement INamedInterface.

◆ after() [2/4]

virtual void IAuditor::after ( CustomEventTypeRef  ,
INamedInterface ,
const StatusCode sc = StatusCode::SUCCESS 
)
pure virtual

Audit the end of a custom "event".

◆ after() [3/4]

virtual void IAuditor::after ( StandardEventType  ,
const std::string ,
const StatusCode sc = StatusCode::SUCCESS 
)
pure virtual

Audit the end of a standard "event" for callers that do not implement INamedInterface.

◆ after() [4/4]

virtual void IAuditor::after ( StandardEventType  ,
INamedInterface ,
const StatusCode sc = StatusCode::SUCCESS 
)
pure virtual

Audit the end of a standard "event".

◆ before() [1/4]

virtual void IAuditor::before ( CustomEventTypeRef  ,
const std::string  
)
pure virtual

Audit the start of a custom "event" for callers that do not implement INamedInterface.

◆ before() [2/4]

virtual void IAuditor::before ( CustomEventTypeRef  ,
INamedInterface  
)
pure virtual

Audit the start of a custom "event".

◆ before() [3/4]

virtual void IAuditor::before ( StandardEventType  ,
const std::string  
)
pure virtual

Audit the start of a standard "event" for callers that do not implement INamedInterface.

◆ before() [4/4]

virtual void IAuditor::before ( StandardEventType  ,
INamedInterface  
)
pure virtual

Audit the start of a standard "event".

◆ DeclareInterfaceID()

IAuditor::DeclareInterfaceID ( IAuditor  ,
,
 
)

◆ isEnabled()

virtual bool IAuditor::isEnabled ( ) const
pure virtual

Tell if the auditor is enabled or not.

◆ sysFinalize()

virtual StatusCode IAuditor::sysFinalize ( )
pure virtual

Used by AuditorSvc.

◆ sysInitialize()

virtual StatusCode IAuditor::sysInitialize ( )
pure virtual

Used by AuditorSvc.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream s,
IAuditor::StandardEventType  e 
)
friend

Definition at line 40 of file IAuditor.h.

40 { return s << toStr( e ); }

◆ toStr

const char* toStr ( IAuditor::StandardEventType  e)
friend

Simple mapping function from IAuditor::StandardEventType to string.

Definition at line 35 of file IAuditor.h.

35  {
37  { "Initialize", "ReInitialize", "Execute", "Finalize", "Start", "Stop", "ReStart" } };
38  return e <= IAuditor::StandardEventType::ReStart ? s_tbl[e] : nullptr;
39  }

The documentation for this class was generated from the following file:
IAuditor::toStr
friend const char * toStr(IAuditor::StandardEventType e)
Simple mapping function from IAuditor::StandardEventType to string.
Definition: IAuditor.h:35
IAuditor::ReStart
@ ReStart
Definition: IAuditor.h:33
IAuditor::Execute
@ Execute
Definition: IAuditor.h:33
gaudirun.s
string s
Definition: gaudirun.py:346
IAuditor::Finalize
@ Finalize
Definition: IAuditor.h:33
IAuditor::Stop
@ Stop
Definition: IAuditor.h:33
IAuditor::Initialize
@ Initialize
Definition: IAuditor.h:33
IAuditor::ReInitialize
@ ReInitialize
Definition: IAuditor.h:33
std::array
STL class.
IAuditor::Start
@ Start
Definition: IAuditor.h:33