Gaudi Framework, version v23r0

Home   Generated: Mon Jan 30 2012
Public Types | Public Member Functions | Protected Member Functions

IChronoSvc Class Reference

"Chrono"-related part of interface IChronoStatSvc More...

#include <GaudiKernel/IChronoSvc.h>

Inheritance diagram for IChronoSvc:
Inheritance graph
[legend]
Collaboration diagram for IChronoSvc:
Collaboration graph
[legend]

List of all members.

Public Types

enum  ChronoStatus { UNKNOWN = 0, RUNNING, STOPPED }
enum  ChronoType { USER = 0, KERNEL, ELAPSED }
typedef std::string ChronoTag
 the actual type of identifier for Chrono objects
typedef double ChronoTime
 Type of the delta-time.

Public Member Functions

 DeclareInterfaceID (IChronoSvc, 3, 0)
 InterfaceID.
virtual ChronoEntitychronoStart (const ChronoTag &t)=0
 start chrono, tagged by its name
virtual const ChronoEntitychronoStop (const ChronoTag &t)=0
 stop chrono, tagged by its name
virtual ChronoTime chronoDelta (const ChronoTag &t, ChronoType f)=0
 return chrono delta time of last start/stop pair
virtual void chronoPrint (const ChronoTag &t)=0
 prints (using message service) info about chrono, tagged by its name
virtual ChronoStatus chronoStatus (const ChronoTag &t)=0
 return the status of named chrono
virtual const ChronoEntitychrono (const ChronoTag &t) const =0
 extract the chrono entity for the given tag (name)

Protected Member Functions

virtual ~IChronoSvc ()
 protected and virtual destructor

Detailed Description

"Chrono"-related part of interface IChronoStatSvc

The IChronoSvc is the interface implemented by the ChronoStatService. This interface is used by any algorithm or services wanting to study its own performance and CPU consumption and some statistical computation

Author:
Vanya BELYAEV ibelyaev@physics.syr.edu (inspired by Mauro VILLA's codes used within ARTE framework )
Date:
December 1, 1999
2007-07-08

Definition at line 33 of file IChronoSvc.h.


Member Typedef Documentation

the actual type of identifier for Chrono objects

Definition at line 40 of file IChronoSvc.h.

typedef double IChronoSvc::ChronoTime

Type of the delta-time.

Definition at line 43 of file IChronoSvc.h.


Member Enumeration Documentation

Enumerator:
UNKNOWN 
RUNNING 
STOPPED 

Definition at line 48 of file IChronoSvc.h.

    {
      UNKNOWN = 0 ,
      RUNNING     ,
      STOPPED
    };
Enumerator:
USER 
KERNEL 
ELAPSED 

Definition at line 55 of file IChronoSvc.h.

    {
      USER = 0 ,
      KERNEL   ,
      ELAPSED
    } ;

Constructor & Destructor Documentation

IChronoSvc::~IChronoSvc (  ) [protected, virtual]

protected and virtual destructor

Definition at line 20 of file IChronoStatSvc.cpp.

{}

Member Function Documentation

virtual const ChronoEntity* IChronoSvc::chrono ( const ChronoTag t ) const [pure virtual]

extract the chrono entity for the given tag (name)

Parameters:
tchrono tag(name)
Returns:
pointer to chrono entity

Implemented in ChronoStatSvc.

virtual ChronoTime IChronoSvc::chronoDelta ( const ChronoTag t,
ChronoType  f 
) [pure virtual]

return chrono delta time of last start/stop pair

Parameters:
tchrono tag (name)
fchtono type
Returns:
delta time

Implemented in ChronoStatSvc.

virtual void IChronoSvc::chronoPrint ( const ChronoTag t ) [pure virtual]

prints (using message service) info about chrono, tagged by its name

Parameters:
tchrono tag (name)
Returns:
status code

Implemented in ChronoStatSvc.

virtual ChronoEntity* IChronoSvc::chronoStart ( const ChronoTag t ) [pure virtual]

start chrono, tagged by its name

Parameters:
tchrono tag (name)
Returns:
chrono object

Implemented in ChronoStatSvc.

virtual ChronoStatus IChronoSvc::chronoStatus ( const ChronoTag t ) [pure virtual]

return the status of named chrono

Parameters:
tchrono tag (name)
Returns:
chrono status

Implemented in ChronoStatSvc.

virtual const ChronoEntity* IChronoSvc::chronoStop ( const ChronoTag t ) [pure virtual]

stop chrono, tagged by its name

Parameters:
tchrono tag (name)
Returns:
status code

Implemented in ChronoStatSvc.

IChronoSvc::DeclareInterfaceID ( IChronoSvc  ,
,
 
)

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated at Mon Jan 30 2012 13:53:16 for Gaudi Framework, version v23r0 by Doxygen version 1.7.2 written by Dimitri van Heesch, © 1997-2004