Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

IChronoStatSvc.h

Go to the documentation of this file.
00001 // $Header: /nfs/slac/g/glast/ground/cvs/GaudiKernel/GaudiKernel/IChronoStatSvc.h,v 1.1.1.1 2001/04/18 18:14:18 tlindner Exp $
00002 #ifndef     GAUDIKERNEL_ICHRONOSTATSVC_H
00003 #define     GAUDIKERNEL_ICHRONOSTATSVC_H
00004 
00005 // Include files
00006 #include "GaudiKernel/IInterface.h"
00007 #include <iostream>
00008 #include <string>
00009 
00010 // Forward declarations
00011 class IMessageSvc;
00012 
00013 // Declaration of the interface ID ( interface id, major version, minor version) 
00014 static const InterfaceID IID_IChronoStatSvc(210, 1 , 0); 
00015 
00016 
00026 class IChronoStatSvc : virtual public IInterface  {  
00027  public:
00029   static const InterfaceID& interfaceID() { return IID_IChronoStatSvc; }
00031   typedef    std::string     ChronoTag  ;
00032   typedef    std::string     StatTag    ;
00033   typedef    double          StatFlag   ;  // type of the Flag   variable for statistics
00034   typedef    double          StatWeight ;  // type of the Weight variable for statistics 
00035 
00036   enum ChronoStatus
00037   {
00038     UNKNOWN = 0                      
00039     , RUNNING      
00040     , STOPPED    
00041   };
00042   
00044   virtual ~IChronoStatSvc(){};
00045   
00047   virtual StatusCode chronoStart( const ChronoTag& ) = 0;
00048 
00050   virtual StatusCode chronoStop( const ChronoTag& ) = 0; 
00051 
00053   virtual StatusCode  chronoPrint( const ChronoTag& ) = 0; 
00054 
00056   virtual ChronoStatus chronoStatus( const ChronoTag& ) = 0; 
00057 
00059   virtual StatusCode stat( const StatTag&, const StatFlag&, const StatWeight& ) = 0; 
00062   virtual StatusCode statPrint( const StatTag& ) = 0;   
00063 };
00064 
00065 #endif  //  GAUDIKERNEL_ICHRONOSTATSVC_H

Generated at Wed Nov 21 12:22:03 2001 by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000