Gaudi Framework, version v23r9

Home   Generated: Thu Jul 18 2013
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
CommonAuditor Class Referenceabstract

Base class with common functionalities shared by few auditor implementations. More...

#include <CommonAuditor.h>

Inheritance diagram for CommonAuditor:
Inheritance graph
[legend]
Collaboration diagram for CommonAuditor:
Collaboration graph
[legend]

Public Member Functions

 CommonAuditor (const std::string &name, ISvcLocator *svcloc)
 Constructor.
 
virtual ~CommonAuditor ()
 Destructor.
 
"before" Auditor hooks

The default behavior is to fall back on the version accepting 2 strings, which must be implemented in the derived class.

virtual void before (StandardEventType evt, const std::string &caller)
 
virtual void before (StandardEventType evt, INamedInterface *caller)
 The following methods are meant to be implemented by the child class...
 
virtual void before (CustomEventTypeRef evt, const std::string &caller)
 
virtual void before (CustomEventTypeRef evt, INamedInterface *caller)
 
"after" Auditor hooks

The default behavior is to fall back on the version accepting 2 strings, which must be implemented in the derived class.

virtual void after (StandardEventType evt, const std::string &caller, const StatusCode &sc)
 
virtual void after (StandardEventType evt, INamedInterface *caller, const StatusCode &sc)
 
virtual void after (CustomEventTypeRef evt, const std::string &caller, const StatusCode &sc)
 
virtual void after (CustomEventTypeRef evt, INamedInterface *caller, const StatusCode &sc)
 
- Public Member Functions inherited from Auditor
 Auditor (const std::string &name, ISvcLocator *svcloc)
 Constructor.
 
virtual ~Auditor ()
 Destructor.
 
StatusCode sysInitialize ()
 Initialization method invoked by the framework.
 
StatusCode sysFinalize ()
 Finalization method invoked by the framework.
 
virtual void beforeInitialize (INamedInterface *)
 
virtual void afterInitialize (INamedInterface *)
 
virtual void beforeReinitialize (INamedInterface *)
 
virtual void afterReinitialize (INamedInterface *)
 
virtual void beforeExecute (INamedInterface *)
 
virtual void afterExecute (INamedInterface *, const StatusCode &)
 
virtual void beforeFinalize (INamedInterface *)
 
virtual void afterFinalize (INamedInterface *)
 
virtual void beforeBeginRun (INamedInterface *)
 
virtual void afterBeginRun (INamedInterface *)
 
virtual void beforeEndRun (INamedInterface *)
 
virtual void afterEndRun (INamedInterface *)
 
virtual StatusCode initialize ()
 
virtual StatusCode finalize ()
 
virtual const std::stringname () const
 
virtual bool isEnabled () const
 
SmartIF< IMessageSvc > & msgSvc () const
 The standard message service.
 
int outputLevel () const
 Retrieve the output level of current auditor.
 
void setOutputLevel (int level)
 Set the output level for current auditor.
 
SmartIF< ISvcLocator > & serviceLocator () const
 The standard service locator.
 
template<class T >
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.
 
virtual StatusCode setProperty (const Property &p)
 Set a value of a property of an auditor.
 
virtual StatusCode setProperty (const std::string &s)
 Implementation of IProperty::setProperty.
 
virtual StatusCode setProperty (const std::string &n, const std::string &v)
 Implementation of IProperty::setProperty.
 
virtual StatusCode getProperty (Property *p) const
 Get the value of a property.
 
virtual const PropertygetProperty (const std::string &name) const
 Get the property by name.
 
virtual StatusCode getProperty (const std::string &n, std::string &v) const
 Implementation of IProperty::getProperty.
 
const std::vector< Property * > & getProperties () const
 Get all properties.
 
template<class TYPE >
StatusCode setProperty (const std::string &name, const TYPE &value)
 set the property form the value
 
StatusCode setProperties ()
 Set the auditor's properties.
 
template<class T >
PropertydeclareProperty (const std::string &name, T &property, const std::string &doc="none") const
 Declare the named property.
 

Protected Member Functions

virtual void i_before (CustomEventTypeRef evt, const std::string &caller)=0
 catch all "before" method, implemented in the derived class
 
virtual void i_after (CustomEventTypeRef evt, const std::string &caller, const StatusCode &sc)=0
 catch all "after" method, implemented in the derived class
 
bool i_auditEventType (const std::string &evt)
 Check if we are requested to audit the passed event type.
 
void i_updateCustomTypes (Property &)
 Update handler for the obsolete property CustomEventTypes.
 

Protected Attributes

StringArrayProperty m_types
 
StringArrayProperty m_customTypes
 

Additional Inherited Members

- Public Types inherited from implements2< IAuditor, IProperty >
typedef implements2 base_class
 Typedef to this class.
 
typedef extend_interfaces2
< IAuditor, IProperty
extend_interfaces_base
 Typedef to the base of this class.
 
typedef
extend_interfaces_base::ext_iids 
interfaces
 MPL set of all the implemented interfaces.
 

Detailed Description

Base class with common functionalities shared by few auditor implementations.

Author
Marco Clemencic

Definition at line 5 of file CommonAuditor.h.

Constructor & Destructor Documentation

CommonAuditor::CommonAuditor ( const std::string name,
ISvcLocator svcloc 
)

Constructor.

Parameters
nameThe algorithm object's name
svclocA pointer to a service location service

Definition at line 3 of file CommonAuditor.cpp.

: Auditor(name, svcloc) {
declareProperty("EventTypes", m_types,
"List of event types to audit ([]=all, ['none']=none)");
declareProperty("CustomEventTypes", m_customTypes,
"OBSOLETE, use EventTypes instead")->declareUpdateHandler(&CommonAuditor::i_updateCustomTypes, this);
}
CommonAuditor::~CommonAuditor ( )
virtual

Destructor.

Definition at line 10 of file CommonAuditor.cpp.

{}

Member Function Documentation

void CommonAuditor::after ( StandardEventType  evt,
const std::string caller,
const StatusCode sc 
)
virtual

Reimplemented from Auditor.

Definition at line 39 of file CommonAuditor.cpp.

{
after(toStr(evt), caller, sc);
}
void CommonAuditor::after ( StandardEventType  evt,
INamedInterface caller,
const StatusCode sc 
)
virtual

Reimplemented from Auditor.

Definition at line 35 of file CommonAuditor.cpp.

{
if (caller) after(toStr(evt), caller->name(), sc);
}
void CommonAuditor::after ( CustomEventTypeRef  evt,
const std::string caller,
const StatusCode sc 
)
virtual

Reimplemented from Auditor.

Definition at line 47 of file CommonAuditor.cpp.

{
if (i_auditEventType(evt)) i_after(evt, caller, sc);
}
void CommonAuditor::after ( CustomEventTypeRef  evt,
INamedInterface caller,
const StatusCode sc 
)
virtual

Reimplemented from Auditor.

Definition at line 43 of file CommonAuditor.cpp.

{
if (caller) after(evt, caller->name(), sc);
}
void CommonAuditor::before ( StandardEventType  evt,
const std::string caller 
)
virtual

Reimplemented from Auditor.

Definition at line 22 of file CommonAuditor.cpp.

{
before(toStr(evt), caller);
}
void CommonAuditor::before ( StandardEventType  evt,
INamedInterface obj 
)
virtual

The following methods are meant to be implemented by the child class...

Reimplemented from Auditor.

Definition at line 18 of file CommonAuditor.cpp.

{
if (caller) before(toStr(evt), caller->name());
}
void CommonAuditor::before ( CustomEventTypeRef  evt,
const std::string caller 
)
virtual

Reimplemented from Auditor.

Definition at line 30 of file CommonAuditor.cpp.

{
if (i_auditEventType(evt)) i_before(evt, caller);
}
void CommonAuditor::before ( CustomEventTypeRef  evt,
INamedInterface caller 
)
virtual

Reimplemented from Auditor.

Definition at line 26 of file CommonAuditor.cpp.

{
if (caller) before(evt, caller->name());
}
virtual void CommonAuditor::i_after ( CustomEventTypeRef  evt,
const std::string caller,
const StatusCode sc 
)
protectedpure virtual

catch all "after" method, implemented in the derived class

Implemented in ChronoAuditor, MemoryAuditor, and NameAuditor.

bool CommonAuditor::i_auditEventType ( const std::string evt)
inlineprotected

Check if we are requested to audit the passed event type.

Definition at line 42 of file CommonAuditor.h.

{
// Note: there is no way to extract from a Property type the type returned by
// value().
// we need to return true is the list is empty or when the list does't
// start by "none" and the list contain the event we got.
return (v.size() == 0) || (
(v[0] != "none") &&
(find(v.begin(), v.end(), evt) != v.end())
);
}
virtual void CommonAuditor::i_before ( CustomEventTypeRef  evt,
const std::string caller 
)
protectedpure virtual

catch all "before" method, implemented in the derived class

Implemented in ChronoAuditor, MemStatAuditor, MemoryAuditor, and NameAuditor.

void CommonAuditor::i_updateCustomTypes ( Property )
protected

Update handler for the obsolete property CustomEventTypes.

Definition at line 12 of file CommonAuditor.cpp.

{
log << MSG::WARNING << "Property CustomEventTypes is deprecated, use EventTypes instead" << endmsg;
}

Member Data Documentation

StringArrayProperty CommonAuditor::m_customTypes
protected

Definition at line 58 of file CommonAuditor.h.

StringArrayProperty CommonAuditor::m_types
protected

Definition at line 54 of file CommonAuditor.h.


The documentation for this class was generated from the following files:

Generated at Thu Jul 18 2013 12:18:07 for Gaudi Framework, version v23r9 by Doxygen version 1.8.2 written by Dimitri van Heesch, © 1997-2004