Go to the documentation of this file.00001
00002 #ifndef AuditorSvc_AuditorSvc_H
00003 #define AuditorSvc_AuditorSvc_H
00004
00005
00006 #include "GaudiKernel/Service.h"
00007 #include "GaudiKernel/IAuditorSvc.h"
00008 #include <list>
00009 #include <vector>
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 class AuditorSvc : public extends1<Service, IAuditorSvc> {
00020
00021 public:
00022
00023
00024 typedef std::list<IAuditor*> ListAudits;
00025 typedef std::vector<std::string> VectorName;
00026
00027
00028
00029
00030 virtual StatusCode initialize();
00031
00032
00033 virtual StatusCode finalize();
00034
00035
00036
00038
00039 virtual void before(StandardEventType, INamedInterface*);
00040 virtual void before(StandardEventType, const std::string&);
00041
00042 virtual void before(CustomEventTypeRef, INamedInterface*);
00043 virtual void before(CustomEventTypeRef, const std::string&);
00044
00045 virtual void after(StandardEventType, INamedInterface*, const StatusCode&);
00046 virtual void after(StandardEventType, const std::string&, const StatusCode&);
00047
00048 virtual void after(CustomEventTypeRef, INamedInterface*, const StatusCode&);
00049 virtual void after(CustomEventTypeRef, const std::string&, const StatusCode&);
00050
00051
00052 virtual void beforeInitialize(INamedInterface* ini);
00053
00054 virtual void afterInitialize(INamedInterface* ini);
00055
00056
00057 virtual void beforeReinitialize(INamedInterface* ini);
00058
00059 virtual void afterReinitialize(INamedInterface* ini);
00060
00061
00062 virtual void beforeExecute(INamedInterface* ini);
00063
00064 virtual void afterExecute(INamedInterface* ini, const StatusCode& );
00065
00066
00067 virtual void beforeBeginRun(INamedInterface* ini);
00068
00069 virtual void afterBeginRun(INamedInterface* ini);
00070
00071
00072 virtual void beforeEndRun(INamedInterface* ini);
00073
00074 virtual void afterEndRun(INamedInterface* ini);
00075
00076
00077 virtual void beforeFinalize(INamedInterface* ini);
00078
00079 virtual void afterFinalize(INamedInterface* ini);
00080
00081 virtual bool isEnabled() const ;
00082
00083 virtual StatusCode sysInitialize();
00084 virtual StatusCode sysFinalize();
00085
00086
00087 virtual IAuditor* getAuditor( const std::string& name );
00088
00089
00090
00091
00092 AuditorSvc( const std::string& name, ISvcLocator* svc );
00093
00094
00095 virtual ~AuditorSvc();
00096
00097 private:
00098
00099 IAuditor* newAuditor_( MsgStream&, const std::string& );
00100 IAuditor* findAuditor_( const std::string& );
00101 StatusCode syncAuditors_();
00102
00103
00104 VectorName m_audNameList;
00105
00106
00107 ListAudits m_pAudList;
00108
00109
00110 bool m_isEnabled;
00111 };
00112
00113 #endif