| # Gaudi Framework, version v25r0 |

Home |  | Generated: Mon Feb 17 2014

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
AuditorSvc.h
Go to the documentation of this file.
1 // $Id: $
2 #ifndef AuditorSvc_AuditorSvc_H
3 #define AuditorSvc_AuditorSvc_H
4
5 // Include Files
6 #include "GaudiKernel/Service.h"
7 #include "GaudiKernel/IAuditorSvc.h"
8 #include <list>
9 #include <vector>
10
11 //------------------------------------------------------------------
12 //
13 // ClassName: AuditorSvc
14 //
15 // Description: This service manages Auditors.
16 // Auditors can be inserted in the system to audit the Algorithms is
17 // in their functions.
18 //------------------------------------------------------------------
19 class AuditorSvc : public extends1<Service, IAuditorSvc> {
20
21 public:
22
23 // Typedefs
24 typedef std::list<IAuditor*> ListAudits;
25 typedef std::vector<std::string> VectorName;
26
27 // Inherited Service overrides:
28 //
29 // Initialize the service.
30 virtual StatusCode initialize();
31
32 // Finalize the service.
33 virtual StatusCode finalize();
34
35 // IAuditorSvc interfaces overwrite
36 //
38
39 virtual void before(StandardEventType, INamedInterface*);
40 virtual void before(StandardEventType, const std::string&);
41
42 virtual void before(CustomEventTypeRef, INamedInterface*);
43 virtual void before(CustomEventTypeRef, const std::string&);
44
45 virtual void after(StandardEventType, INamedInterface*, const StatusCode&);
46 virtual void after(StandardEventType, const std::string&, const StatusCode&);
47
48 virtual void after(CustomEventTypeRef, INamedInterface*, const StatusCode&);
49 virtual void after(CustomEventTypeRef, const std::string&, const StatusCode&);
50
51 // inform Auditors that the initialize() is about to be called
52 virtual void beforeInitialize(INamedInterface* ini);
53 // inform Auditors that the initialize() has been called
54 virtual void afterInitialize(INamedInterface* ini);
55
56 // inform Auditors that the reinitialize() is about to be called
57 virtual void beforeReinitialize(INamedInterface* ini);
58 // inform Auditors that the reinitialize() has been called
59 virtual void afterReinitialize(INamedInterface* ini);
60
61 // inform Auditors that the execute() is about to be called
62 virtual void beforeExecute(INamedInterface* ini);
63 // inform Auditors that the execute() has been called
64 virtual void afterExecute(INamedInterface* ini, const StatusCode& );
65
66 // inform Auditors that the beginRun() is about to be called
67 virtual void beforeBeginRun(INamedInterface* ini);
68 // inform Auditors that the beginRun() has been called
69 virtual void afterBeginRun(INamedInterface* ini);
70
71 // inform Auditors that the endRun() is about to be called
72 virtual void beforeEndRun(INamedInterface* ini);
73 // inform Auditors that the endRun() has been called
74 virtual void afterEndRun(INamedInterface* ini);
75
76 // inform Auditors that the finalize() is about to be called
77 virtual void beforeFinalize(INamedInterface* ini);
78 // inform Auditors that the finalize() has been called
79 virtual void afterFinalize(INamedInterface* ini);
80
81 virtual bool isEnabled() const ;
82
83 virtual StatusCode sysInitialize();
84 virtual StatusCode sysFinalize();
85
86 // management functionality: retrieve an Auditor
87 virtual IAuditor* getAuditor( const std::string& name );
88
89 // Standard Constructor.
90 // Input: name String with service name
91 // Input: svc Pointer to service locator interface
92 AuditorSvc( const std::string& name, ISvcLocator* svc );
93
94 // Destructor.
95 virtual ~AuditorSvc();
96
97 private:
98 // management helper
99 IAuditor* newAuditor_( MsgStream&, const std::string& );
100 IAuditor* findAuditor_( const std::string& );
101 StatusCode syncAuditors_();
102
103 // List of auditor names
104 VectorName m_audNameList;
105
106 // Manager list of Auditors
107 ListAudits m_pAudList;
108
109 // To disable alltogether the auditors
110 bool m_isEnabled;
111 };
112
113 #endif