1 #ifndef IncidentSvc_IncidentSvc_H
2 #define IncidentSvc_IncidentSvc_H
22 #include "boost/thread/recursive_mutex.hpp"
65 const std::string&
type =
"" ,
67 bool rethrow =
false ,
68 bool singleShot =
false ) ;
72 const std::string&
type =
"" ) ;
76 virtual void getListeners (std::vector<IIncidentListener*>& lis,
77 const std::string&
type =
"")
const ;
boost::recursive_mutex m_listenerMapMutex
Mutex to synchronize access to m_listenerMap.
ChronoEntity m_timer
timer & it's lock
The ISvcLocator is the interface implemented by the Service Factory in the Application Manager to loc...
GaudiUtils::HashMap< Gaudi::StringKey, ListenerList * > ListenerMap
a small helper class for implementation of ChronoStatSvc service, It also could be used as some local...
virtual StatusCode initialize()
Initialization (from CONFIGURED to INITIALIZED).
std::list< Listener > ListenerList
IncidentSvc(const std::string &name, ISvcLocator *svc)
virtual StatusCode finalize()
Finalize (from INITIALIZED to CONFIGURED).
virtual void getListeners(std::vector< IIncidentListener * > &lis, const std::string &type="") const
The interface implemented by any class wanting to listen to Incidents.
This class is used for returning status codes from appropriate routines.
Base class used to extend a class implementing other interfaces.
const std::string * m_currentIncidentType
Incident being fired.
Listener(IIncidentListener *il, long pri, bool thr=false, bool single=false)
IIncidentListener * iListener
virtual const std::string & name() const
Retrieve name of the service.
virtual void removeListener(IIncidentListener *lis, const std::string &type="")
Remove listener.
void i_fireIncident(const Incident &incident, const std::string &type)
Internal function to allow incidents listening to all events.
virtual void addListener(IIncidentListener *lis, const std::string &type="", long priority=0, bool rethrow=false, bool singleShot=false)
Add listener.
Base class for all Incidents (computing events).
ListenerMap m_listenerMap
List of auditor names.
Default implementation of the IIncidentSvc interface.
virtual void fireIncident(const Incident &incident)
Fire an Incident.