![]() |
ATLAS Offline Software
|
This service gives a graphical representation of algorithms accessing StoreGate. More...
#include <SGAudSvc.h>
Public Member Functions | |
SGAudSvc (const std::string &name, ISvcLocator *pSvcLocator) | |
Constructor with parameters: More... | |
virtual StatusCode | initialize () override |
Gaudi Service Implementation. More... | |
virtual StatusCode | finalize () override |
virtual void | handle (const Incident &incident) override |
incident service handle for EndEvent. More... | |
virtual void | SGAudit (const std::string &key, const CLID &id, const int &fnc, const int &store_id) override |
bool | SGGetCurrentAlg () |
Gets name of curently running algorithm from AlgContextSvc. More... | |
virtual void | setFakeCurrentAlg (const std::string &) override |
For implementing custom increased granularity auditing of for instance tools. More... | |
virtual void | clearFakeCurrentAlg () override |
For implementing custom increased granularity auditing of for instance tools. More... | |
Private Types | |
typedef std::map< std::string, std::set< std::string > > | DataMap |
Private Member Functions | |
SGAudSvc () | |
Default constructor: More... | |
void | SGAudRETRIEVE (std::string SGobject) |
void | SGAudRECORD (std::string SGobject) |
void | getNobj (const std::string &name) |
void | addRead () |
void | addWrite () |
void | monitor () |
just counts events. called at EndEvent incident More... | |
void | writeJSON () |
Private Attributes | |
Gaudi::Property< std::string > | m_outFileName |
Gaudi::Property< std::string > | m_allFileName |
Gaudi::Property< std::string > | m_sumFileName |
Gaudi::Property< bool > | m_ignoreFakeAlgs |
Gaudi::Property< int > | m_startEvent |
Gaudi::Property< bool > | m_useCLID |
ServiceHandle< IAlgContextSvc > | p_algCtxSvc |
Pointer to the AlgContextScv . More... | |
ServiceHandle< IClassIDSvc > | m_pCID |
std::vector< std::string > | m_vObj |
Vector of accessed SG objects names. More... | |
std::vector< std::string > | m_vAlg |
Vector of names of algorithms accessing SG. More... | |
std::map< int, int > | m_timesRead |
map counting Reads of each object by each algorithm. More... | |
std::map< int, int > | m_timesWritten |
map counting Writes of each object by each algorithm. More... | |
std::string | m_currAlg |
std::string | m_currObj |
std::string | m_fakeCurrAlg |
int | m_nCurrAlg {0} |
int | m_nCurrObj {0} |
int | m_nEvents {0} |
DataMap | m_read |
DataMap | m_write |
std::ofstream | m_ofa |
std::ofstream | m_ofs |
bool | m_inExec {false} |
This service gives a graphical representation of algorithms accessing StoreGate.
SGAudSvc instruments retrieve and record functions of StoreGate and from there gets names of objects accessed. Upon getting an object name it asks AlgContexSvc for the name of the current algorithm. At the end of run, an ASCII file is produced (SGAudSvc.out).
By default data are not collected for the first three events.
Definition at line 42 of file SGAudSvc.h.
|
private |
Definition at line 138 of file SGAudSvc.h.
SGAudSvc::SGAudSvc | ( | const std::string & | name, |
ISvcLocator * | pSvcLocator | ||
) |
|
private |
Default constructor:
|
private |
Definition at line 356 of file SGAudSvc.cxx.
|
private |
Definition at line 371 of file SGAudSvc.cxx.
|
overridevirtual |
For implementing custom increased granularity auditing of for instance tools.
Definition at line 391 of file SGAudSvc.cxx.
|
overridevirtual |
Definition at line 81 of file SGAudSvc.cxx.
|
private |
Definition at line 336 of file SGAudSvc.cxx.
|
overridevirtual |
incident service handle for EndEvent.
Calls monitor. There should be more elegant way to get number of events passed.
Definition at line 136 of file SGAudSvc.cxx.
|
overridevirtual |
|
private |
just counts events. called at EndEvent incident
Definition at line 173 of file SGAudSvc.cxx.
|
overridevirtual |
For implementing custom increased granularity auditing of for instance tools.
Definition at line 386 of file SGAudSvc.cxx.
|
overridevirtual |
Definition at line 226 of file SGAudSvc.cxx.
|
private |
Definition at line 205 of file SGAudSvc.cxx.
|
private |
Definition at line 181 of file SGAudSvc.cxx.
bool SGAudSvc::SGGetCurrentAlg | ( | ) |
Gets name of curently running algorithm from AlgContextSvc.
Definition at line 301 of file SGAudSvc.cxx.
|
private |
Definition at line 396 of file SGAudSvc.cxx.
|
private |
Definition at line 103 of file SGAudSvc.h.
|
private |
Definition at line 130 of file SGAudSvc.h.
|
private |
Definition at line 131 of file SGAudSvc.h.
|
private |
Definition at line 132 of file SGAudSvc.h.
|
private |
Definition at line 109 of file SGAudSvc.h.
|
private |
Definition at line 143 of file SGAudSvc.h.
|
private |
Definition at line 133 of file SGAudSvc.h.
|
private |
Definition at line 134 of file SGAudSvc.h.
|
private |
Definition at line 135 of file SGAudSvc.h.
|
private |
Definition at line 142 of file SGAudSvc.h.
|
private |
Definition at line 142 of file SGAudSvc.h.
|
private |
Definition at line 100 of file SGAudSvc.h.
|
private |
Definition at line 120 of file SGAudSvc.h.
|
private |
Definition at line 139 of file SGAudSvc.h.
|
private |
Definition at line 112 of file SGAudSvc.h.
|
private |
Definition at line 106 of file SGAudSvc.h.
|
private |
map counting Reads of each object by each algorithm.
Definition at line 127 of file SGAudSvc.h.
|
private |
map counting Writes of each object by each algorithm.
Definition at line 129 of file SGAudSvc.h.
|
private |
Definition at line 115 of file SGAudSvc.h.
|
private |
Vector of names of algorithms accessing SG.
Definition at line 125 of file SGAudSvc.h.
|
private |
Vector of accessed SG objects names.
Definition at line 123 of file SGAudSvc.h.
|
private |
Definition at line 140 of file SGAudSvc.h.
|
private |
Pointer to the AlgContextScv
.
Definition at line 119 of file SGAudSvc.h.