00001 #ifndef __MEMCTOFCORR5MODULE_H__ 00002 #define __MEMCTOFCORR5MODULE_H__ 00003 //----------------------------------------------------------------------------- 00004 // 00005 // 00006 // Purpose: wraps the TOF Run-by-Run & Tower-by-Tower correction of DST 00007 // 00008 // Description: algorithm class 00009 // 00010 // The application of this class will make your life better, will make you smarter, 00011 // and your hair grow fuller *) 00012 00013 // *) individual results may vary. 00014 00015 //----------------------------------------------------------------------------- 00016 00017 #include "phool.h" 00018 #include "EMCModule.h" 00019 #include "PdbEmcT0Sector.hh" 00020 #include "PdbEmcT0Tower.hh" 00021 00025 class PHCompositeNode; 00026 00027 class mEmcTOFCorr5Module: public EMCModule { 00028 00029 private: 00030 mEmcTOFCorr5Module(); 00031 00032 public: 00033 virtual ~mEmcTOFCorr5Module(){} 00034 00036 static mEmcTOFCorr5Module* instance(); 00037 00039 00040 void readDataFromDB(const int run_number); 00041 00043 PHBoolean event(PHCompositeNode * root) ; 00044 PHBoolean eventFirst(PHCompositeNode * root) ; 00045 00046 private: 00047 00049 float get_correction( int arm, int sec, int ind_y, int ind_z ); 00050 00051 PdbEmcT0Sector TheSector; 00052 PdbEmcT0Tower TheTower; 00053 PdbEmcT0Sector TheSectorVd; 00054 00055 int isvalid; 00056 00057 }; 00058 00059 00060 #endif /* __MEMCTOFCORR4MODULE_H__ */