EmcStaticData.h

Go to the documentation of this file.
00001 #ifndef __EMCSTATICDATA_H__
00002 #define __EMCSTATICDATA_H__
00003 
00004 #include <vector>
00005 #include <cassert>
00006 
00007 class EmcSector;
00008 class PbScCalibrationData;
00009 class PbGlCalibrationData;
00010 class PHTimeStamp; 
00011   
00026 class EmcStaticData 
00027 {
00028 public:
00034   static EmcStaticData * buildEmcStaticData();
00036   static int deleteEmcStaticData();
00038     EmcSector * getSector(int SectorNumber) {
00039     assert(SectorNumber>=0 && SectorNumber<(int)Sectors.size()) ;
00040     return Sectors[SectorNumber];}
00042     void buildEmcSector(const char * , PHTimeStamp* ts = 0);
00044     PbScCalibrationData * getPbScData(){return PbScData;}
00046     PbGlCalibrationData * getPbGlData(){return PbGlData;}
00047 
00048  protected:
00049   EmcStaticData() ;
00050   ~EmcStaticData() ;
00051 
00052  private:
00053 
00054   static EmcStaticData * single; 
00055   static int access_count; 
00056     PbScCalibrationData * PbScData; 
00057     PbGlCalibrationData * PbGlData; 
00058     std::vector<EmcSector*> Sectors ; 
00059 
00060 };
00061 #endif