emcOMTimeStamp.h

Go to the documentation of this file.
00001 #ifndef __EMCOMTIMESTAMP_H__
00002 #define __EMCOMTIMESTAMP_H__
00003 
00004 #ifndef __EMCOBJECTMANAGER_H__
00005 #include "emcObjectManager.h"
00006 #endif
00007 
00008 #include <map>
00009 
00010 class PHTimeStamp;
00011 
00014 class emcOMTimeStamp : public emcObjectManager
00015 {
00016 public:
00017 
00018   emcOMTimeStamp(const char* name="", const char* title="");
00019   virtual ~emcOMTimeStamp();
00020 
00021   virtual bool CanCollect(const emcManageable&) const
00022   { return false; }
00023 
00024   virtual bool CanRead(const emcManageable& object) const;
00025 
00026   virtual bool CanWrite(const emcManageable&) const
00027   { return false; }
00028 
00029   virtual emcManageable* Collect(const emcManageable&,
00030                                  const PHTimeStamp&)
00031   { return 0; }
00032 
00033   virtual bool Read(emcManageable& ,
00034                     const PHTimeStamp&,
00035                     int) 
00036   { return false; }
00037 
00038   virtual bool Read(emcManageable& object, int runnumber);
00039 
00040   virtual void Reset(void);
00041 
00042   virtual bool Write(const emcManageable&,
00043                      const PHTimeStamp&,
00044                      int=-1)
00045   { return false; }
00046 
00047 private:
00048   std::map<int,PHTimeStamp*> fTSMap;
00049 };
00050 
00051 #endif