00001
00002
00003
00004 #ifndef BesTIMERSVC_H_
00005 #define BesTIMERSVC_H_
00006 #include <vector>
00007 #include "GaudiKernel/MsgStream.h"
00008 #include "GaudiKernel/Service.h"
00009 #include "GaudiKernel/SmartDataPtr.h"
00010 #include "GaudiKernel/IInterface.h"
00011 #include "BesTimerSvc/IBesTimerSvc.h"
00012 #include "BesTimerSvc/BesTimer.h"
00013
00014
00015
00016 class BesTimerSvc : public Service, virtual public IBesTimerSvc {
00017 public:
00018
00019 BesTimerSvc( const std::string& name, ISvcLocator* svcloc );
00020 ~BesTimerSvc();
00021
00022 virtual StatusCode queryInterface(const InterfaceID& riid, void** ppvUnknown);
00023 virtual StatusCode initialize ( );
00024 virtual StatusCode finalize ( );
00025 virtual BesTimer* addItem(const std::string &name);
00026 virtual std::vector < BesTimer* >::iterator begin( void );
00027 virtual std::vector < BesTimer* >::iterator end( void );
00028 virtual void print( );
00029
00030
00031
00032 private:
00033 std::vector< BesTimer* > m_itemList;
00034
00035 };
00036
00037
00038 #endif // BesTIMER_H