Go to the documentation of this file.
11 #ifndef INTERFACES_IINCIDENTSVC_H
12 #define INTERFACES_IINCIDENTSVC_H
44 bool rethrow =
false,
bool singleShot =
false ) = 0;
52 virtual void getListeners( std::vector<IIncidentListener*>& lis,
const std::string&
type =
"" )
const = 0;
63 bool rethrow{
false };
64 bool singleShot{
false };
68 typedef std::vector<std::pair<std::unique_ptr<Incident>, std::vector<Listener>>>
IncidentPack;
77 virtual void fireIncident( std::unique_ptr<Incident> incident ) = 0;
80 #endif // GAUDIKERNEL_IINCIDENTSVC_H
virtual void fireIncident(std::unique_ptr< Incident > incident)=0
Fire an Incident, Incident ownership has to be passed to the service since it is going to be accessed...
virtual void addListener(IIncidentListener *lis, const std::string &type="", long priority=0, bool rethrow=false, bool singleShot=false)=0
Add listener.
virtual void getListeners(std::vector< IIncidentListener * > &lis, const std::string &type="") const =0
virtual void removeListener(IIncidentListener *lis, const std::string &type="")=0
Remove listener.
virtual void fireIncident(const Incident &incident)=0
Fire an Incident.
DeclareInterfaceID(IIncidentSvc, 2, 0)
InterfaceID.
std::vector< std::pair< std::unique_ptr< Incident >, std::vector< Listener > > > IncidentPack
List of incidents and their listeners.
virtual IIncidentSvc::IncidentPack getIncidents(const EventContext *ctx)=0
Get List of asynchronous incidents and their listeners.