![]() |
The Gaudi Framework
v27r1
|
The Chrono & Stat Sservice: service implements the IChronoStatSvc interface and provides the basic chronometry and some statistical counts needed by all applications. More...
#include <src/ChronoStatSvc.h>
Public Types | |
typedef std::map< IChronoStatSvc::ChronoTag, ChronoEntity > | ChronoMap |
some useful typedefs More... | |
typedef std::map< IChronoStatSvc::StatTag, StatEntity > | StatMap |
![]() | |
using | base_class = extends |
Typedef to this class. More... | |
using | extend_interfaces_base = extend_interfaces< Interfaces...> |
Typedef to the base of this class. More... | |
![]() | |
typedef Gaudi::PluginService::Factory< IService *, const std::string &, ISvcLocator * > | Factory |
![]() | |
using | base_class = CommonMessaging |
![]() | |
using | ext_iids = typename Gaudi::interface_list_cat< typename Interfaces::ext_iids...>::type |
take union of the ext_iids of all Interfaces... More... | |
Public Member Functions | |
StatusCode | initialize () override |
Implementation of IService::initialize() More... | |
StatusCode | finalize () override |
Implementation of IService::finalize() More... | |
virtual ChronoEntity * | chronoStart (const IChronoStatSvc::ChronoTag &chronoTag) override |
Implementation of IChronoStatSvc::chronoStart. More... | |
virtual const ChronoEntity * | chronoStop (const IChronoStatSvc::ChronoTag &chronoTag) override |
Implementation of IChronoStatSvc::chronoStop. More... | |
virtual IChronoStatSvc::ChronoTime | chronoDelta (const IChronoStatSvc::ChronoTag &chronoTag, IChronoStatSvc::ChronoType theType) override |
Implementation of IchronoStatSvc::chronoDelta. More... | |
virtual void | chronoPrint (const IChronoStatSvc::ChronoTag &chronoTag) override |
Implementation of IChronoStatSvc::chronoPrint. More... | |
virtual ChronoStatus | chronoStatus (const IChronoStatSvc::ChronoTag &chronoTag) override |
Implementation of IChronoStatSvc::chronoStatus. More... | |
virtual void | stat (const IChronoStatSvc::StatTag &statTag, const IChronoStatSvc::StatFlag &statFlag) override |
Implementation of IChronoStatSvc::stat add statistical information to the entity , tagged by its name. More... | |
virtual void | statPrint (const IChronoStatSvc::ChronoTag &statTag) override |
prints (using message service) info about statistical entity, tagged by its name More... | |
virtual const ChronoEntity * | chrono (const IChronoStatSvc::ChronoTag &t) const override |
extract the chrono entity for the given tag (name) More... | |
virtual const StatEntity * | stat (const IChronoStatSvc::StatTag &t) const override |
extract the stat entity for the given tag (name) More... | |
ChronoStatSvc (const std::string &name, ISvcLocator *svcloc) | |
Default constructor. More... | |
void | merge (const ChronoStatSvc &css) |
Compound assignment operator. More... | |
~ChronoStatSvc () override=default | |
Destructor. More... | |
void | handle (const Incident &incident) override |
![]() | |
void * | i_cast (const InterfaceID &tid) const override |
Implementation of IInterface::i_cast. More... | |
StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
Implementation of IInterface::queryInterface. More... | |
std::vector< std::string > | getInterfaceNames () const override |
Implementation of IInterface::getInterfaceNames. More... | |
~extends () override=default | |
Virtual destructor. More... | |
![]() | |
const std::string & | name () const override |
Retrieve name of the service. More... | |
StatusCode | configure () override |
StatusCode | initialize () override |
StatusCode | start () override |
StatusCode | stop () override |
StatusCode | finalize () override |
StatusCode | terminate () override |
Gaudi::StateMachine::State | FSMState () const override |
Gaudi::StateMachine::State | targetFSMState () const override |
StatusCode | reinitialize () override |
StatusCode | restart () override |
StatusCode | sysInitialize () override |
Initialize Service. More... | |
StatusCode | sysStart () override |
Initialize Service. More... | |
StatusCode | sysStop () override |
Initialize Service. More... | |
StatusCode | sysFinalize () override |
Finalize Service. More... | |
StatusCode | sysReinitialize () override |
Re-initialize the Service. More... | |
StatusCode | sysRestart () override |
Re-initialize the Service. More... | |
StatusCode | setProperty (const Property &p) override |
StatusCode | setProperty (const std::string &s) override |
StatusCode | setProperty (const std::string &n, const std::string &v) override |
StatusCode | getProperty (Property *p) const override |
const Property & | getProperty (const std::string &name) const override |
StatusCode | getProperty (const std::string &n, std::string &v) const override |
const std::vector< Property * > & | getProperties () const override |
bool | hasProperty (const std::string &name) const override |
template<class TYPE > | |
StatusCode | setProperty (const std::string &name, const TYPE &value) |
set the property form the value More... | |
Service (std::string name, ISvcLocator *svcloc) | |
Standard Constructor. More... | |
SmartIF< ISvcLocator > & | serviceLocator () const override |
Retrieve pointer to service locator. More... | |
StatusCode | setProperties () |
Method for setting declared properties to the values specified for the job. More... | |
template<class T > | |
StatusCode | service (const std::string &name, const T *&psvc, bool createIf=true) const |
Access a service by name, creating it if it doesn't already exist. More... | |
template<class T > | |
StatusCode | service (const std::string &name, T *&psvc, bool createIf=true) const |
template<typename IFace = IService> | |
SmartIF< IFace > | service (const std::string &name, bool createIf=true) const |
template<class T > | |
StatusCode | service (const std::string &svcType, const std::string &svcName, T *&psvc) const |
Access a service by name and type, creating it if it doesn't already exist. More... | |
template<class T > | |
Property * | declareProperty (const std::string &name, T &property, const std::string &doc="none") const |
Declare the named property. More... | |
Property * | declareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") const |
Declare remote named properties. More... | |
template<class T > | |
StatusCode | declarePrivateTool (ToolHandle< T > &handle, std::string toolTypeAndName="", bool createIf=true) |
Declare used Private tool. More... | |
template<class T > | |
StatusCode | declarePublicTool (ToolHandle< T > &handle, std::string toolTypeAndName="", bool createIf=true) |
Declare used Public tool. More... | |
SmartIF< IAuditorSvc > & | auditorSvc () const |
The standard auditor service.May not be invoked before sysInitialize() has been invoked. More... | |
![]() | |
virtual | ~CommonMessagingBase ()=default |
Virtual destructor. More... | |
SmartIF< IMessageSvc > & | msgSvc () const |
The standard message service. More... | |
MsgStream & | msgStream () const |
Return an uninitialized MsgStream. More... | |
MsgStream & | msgStream (const MSG::Level level) const |
Predefined configurable message stream for the efficient printouts. More... | |
MsgStream & | always () const |
shortcut for the method msgStream(MSG::ALWAYS) More... | |
MsgStream & | fatal () const |
shortcut for the method msgStream(MSG::FATAL) More... | |
MsgStream & | err () const |
shortcut for the method msgStream(MSG::ERROR) More... | |
MsgStream & | error () const |
shortcut for the method msgStream(MSG::ERROR) More... | |
MsgStream & | warning () const |
shortcut for the method msgStream(MSG::WARNING) More... | |
MsgStream & | info () const |
shortcut for the method msgStream(MSG::INFO) More... | |
MsgStream & | debug () const |
shortcut for the method msgStream(MSG::DEBUG) More... | |
MsgStream & | verbose () const |
shortcut for the method msgStream(MSG::VERBOSE) More... | |
MsgStream & | msg () const |
shortcut for the method msgStream(MSG::INFO) More... | |
MSG::Level | msgLevel () const |
get the output level from the embedded MsgStream More... | |
MSG::Level | outputLevel () const __attribute__((deprecated)) |
Backward compatibility function for getting the output level. More... | |
bool | msgLevel (MSG::Level lvl) const |
get the output level from the embedded MsgStream More... | |
![]() | |
~extend_interfaces () override=default | |
Virtual destructor. More... | |
Protected Member Functions | |
void | printStats () |
![]() | |
~Service () override | |
Standard Destructor. More... | |
int | outputLevel () const |
get the Service's output level More... | |
![]() | |
void | updateMsgStreamOutputLevel (int level) |
Update the output level of the cached MsgStream. More... | |
Private Types | |
typedef std::map< ChronoTag, std::vector< IChronoSvc::ChronoTime > > | TimeMap |
Private Member Functions | |
ChronoStatSvc ()=delete | |
ChronoStatSvc (const ChronoStatSvc &)=delete | |
ChronoStatSvc & | operator= (const ChronoStatSvc &)=delete |
void | saveStats () |
dump the statistics into an ASCII file for offline processing More... | |
Private Attributes | |
ChronoMap | m_chronoEntities |
chrono part More... | |
int | m_intChronoPrintLevel |
level of info printing More... | |
MSG::Level | m_chronoPrintLevel = MSG::INFO |
bool | m_chronoTableFlag |
flag for printing the final table More... | |
bool | m_chronoCoutFlag |
flag for destination of the the final table More... | |
bool | m_chronoOrderFlag |
flag for formattion the final statistic table More... | |
bool | m_printUserTime |
flag for printing User quantities More... | |
bool | m_printSystemTime |
flag for printing System quantities More... | |
bool | m_printEllapsedTime |
flag for printing Ellapsed quantities More... | |
long | m_numberOfSkippedEventsForMemStat |
StatMap | m_statEntities |
stat part More... | |
int | m_intStatPrintLevel |
level of info printing More... | |
MSG::Level | m_statPrintLevel = MSG::INFO |
bool | m_statTableFlag |
flag for printing the final table More... | |
bool | m_statCoutFlag |
flag for destination of the t he final table More... | |
bool | m_statOrderFlag |
flag for formattion the final statistic table More... | |
StringProperty | m_statsOutFileName |
Name of the output file where we'll dump the stats. More... | |
std::string | m_header |
the header row More... | |
std::string | m_format1 |
format for regular statistical printout rows More... | |
std::string | m_format2 |
format for "efficiency" statistical printout rows More... | |
bool | m_useEffFormat = true |
flag to use the special "efficiency" format More... | |
TimeMap | m_perEvtTime |
std::string | m_perEventFile |
std::ofstream | m_ofd |
Additional Inherited Members | |
![]() | |
IntegerProperty | m_outputLevel = MSG::NIL |
Service output level. More... | |
Gaudi::StateMachine::State | m_state = Gaudi::StateMachine::OFFLINE |
Service state. More... | |
Gaudi::StateMachine::State | m_targetState = Gaudi::StateMachine::OFFLINE |
Service state. More... | |
The Chrono & Stat Sservice: service implements the IChronoStatSvc interface and provides the basic chronometry and some statistical counts needed by all applications.
Definition at line 33 of file ChronoStatSvc.h.
typedef std::map<IChronoStatSvc::ChronoTag,ChronoEntity> ChronoStatSvc::ChronoMap |
some useful typedefs
Definition at line 39 of file ChronoStatSvc.h.
typedef std::map<IChronoStatSvc::StatTag,StatEntity> ChronoStatSvc::StatMap |
Definition at line 40 of file ChronoStatSvc.h.
|
private |
Definition at line 192 of file ChronoStatSvc.h.
ChronoStatSvc::ChronoStatSvc | ( | const std::string & | name, |
ISvcLocator * | svcloc | ||
) |
Default constructor.
name | service instance name |
svcloc | pointer to servcie locator |
decide if the final printout should be performed
define the destination of the table to be printed
print level
if printout is to be performed, should one take care about some ordering?
if User Time information to be printed?
if System Time information to be printed?
if Ellapsed Time information to be printed?
deside if the final printout should be performed
define the destination of the table to be printed
print level
if printout is to be performed, should one take care about some ordering?
Definition at line 60 of file ChronoStatSvc.cpp.
|
overridedefault |
Destructor.
|
privatedelete |
|
privatedelete |
|
overridevirtual |
extract the chrono entity for the given tag (name)
t | chrono tag(name) |
Definition at line 482 of file ChronoStatSvc.cpp.
|
overridevirtual |
Implementation of IchronoStatSvc::chronoDelta.
Definition at line 410 of file ChronoStatSvc.cpp.
|
overridevirtual |
Implementation of IChronoStatSvc::chronoPrint.
Definition at line 419 of file ChronoStatSvc.cpp.
|
overridevirtual |
Implementation of IChronoStatSvc::chronoStart.
Definition at line 388 of file ChronoStatSvc.cpp.
|
overridevirtual |
Implementation of IChronoStatSvc::chronoStatus.
Definition at line 438 of file ChronoStatSvc.cpp.
|
overridevirtual |
Implementation of IChronoStatSvc::chronoStop.
Definition at line 399 of file ChronoStatSvc.cpp.
|
override |
Implementation of IService::finalize()
stop its own chrono
Is the final chrono table to be printed?
decoration
CONTINUE
CONTINUE
stop chrono (if it is still in RUNNING status)
print to std::cout
print to MsgStream
decoration
CONTINUE
CONTINUE
stop chrono (if it is still in RUNNING status)
print to std::cout
print to MsgStream
decoration
CONTINUE
CONTINUE
stop chrono (if it is still in RUNNING status)
print to std::cout
print to MsgStream
clear the temporary container
the final decoration
Is the final stat table to be printed?
< finalize the base class
Definition at line 229 of file ChronoStatSvc.cpp.
|
override |
Definition at line 649 of file ChronoStatSvc.cpp.
|
override |
Implementation of IService::initialize()
redefine some "properties"
start its own chrono
Definition at line 166 of file ChronoStatSvc.cpp.
void ChronoStatSvc::merge | ( | const ChronoStatSvc & | css | ) |
Compound assignment operator.
Definition at line 138 of file ChronoStatSvc.cpp.
|
privatedelete |
|
protected |
nothing to print?
CONTINUE
CONTINUE
decoration
Definition at line 576 of file ChronoStatSvc.cpp.
|
private |
dump the statistics into an ASCII file for offline processing
CONTINUE
CONTINUE
Definition at line 503 of file ChronoStatSvc.cpp.
|
overridevirtual |
Implementation of IChronoStatSvc::stat add statistical information to the entity , tagged by its name.
Definition at line 444 of file ChronoStatSvc.cpp.
|
overridevirtual |
extract the stat entity for the given tag (name)
t | stat tag(name) |
Definition at line 495 of file ChronoStatSvc.cpp.
|
overridevirtual |
prints (using message service) info about statistical entity, tagged by its name
Definition at line 469 of file ChronoStatSvc.cpp.
|
private |
flag for destination of the the final table
Definition at line 153 of file ChronoStatSvc.h.
|
private |
chrono part
Definition at line 146 of file ChronoStatSvc.h.
|
private |
flag for formattion the final statistic table
Definition at line 155 of file ChronoStatSvc.h.
|
private |
Definition at line 149 of file ChronoStatSvc.h.
|
private |
flag for printing the final table
Definition at line 151 of file ChronoStatSvc.h.
|
private |
format for regular statistical printout rows
Definition at line 186 of file ChronoStatSvc.h.
|
private |
format for "efficiency" statistical printout rows
Definition at line 188 of file ChronoStatSvc.h.
|
private |
the header row
Definition at line 184 of file ChronoStatSvc.h.
|
private |
level of info printing
Definition at line 148 of file ChronoStatSvc.h.
|
private |
level of info printing
Definition at line 170 of file ChronoStatSvc.h.
|
private |
Definition at line 164 of file ChronoStatSvc.h.
|
private |
Definition at line 195 of file ChronoStatSvc.h.
|
private |
Definition at line 194 of file ChronoStatSvc.h.
|
private |
Definition at line 193 of file ChronoStatSvc.h.
|
private |
flag for printing Ellapsed quantities
Definition at line 161 of file ChronoStatSvc.h.
|
private |
flag for printing System quantities
Definition at line 159 of file ChronoStatSvc.h.
|
private |
flag for printing User quantities
Definition at line 157 of file ChronoStatSvc.h.
|
private |
flag for destination of the t he final table
Definition at line 175 of file ChronoStatSvc.h.
|
private |
stat part
Definition at line 167 of file ChronoStatSvc.h.
|
private |
flag for formattion the final statistic table
Definition at line 177 of file ChronoStatSvc.h.
|
private |
Definition at line 171 of file ChronoStatSvc.h.
|
private |
Name of the output file where we'll dump the stats.
Definition at line 181 of file ChronoStatSvc.h.
|
private |
flag for printing the final table
Definition at line 173 of file ChronoStatSvc.h.
|
private |
flag to use the special "efficiency" format
Definition at line 190 of file ChronoStatSvc.h.