00001 #ifndef tofcalgsec_Header 00002 #define tofcalgsec_Header 00003 00004 #include "GaudiKernel/Algorithm.h" 00005 #include "GaudiKernel/NTuple.h" 00006 #include "tofcalgsec/TofCalibCheck.h" 00007 00008 using namespace std; 00009 class tofcalgsec:public Algorithm { 00010 00011 public: 00012 tofcalgsec(const std::string& name, ISvcLocator* pSvcLocator); 00013 ~tofcalgsec(); 00014 StatusCode initialize(); 00015 StatusCode beginRun(); 00016 StatusCode execute(); 00017 StatusCode endRun(); 00018 StatusCode finalize(); 00019 00020 protected: 00021 bool testbit( unsigned int n ) { 00022 if( n>m_calibItem.size() ) return false; 00023 return m_calibItem[n]=='0'?false:true; 00024 } 00025 00026 private: 00027 00028 bool m_online; // online,offline 00029 bool m_calibration; // online and calibration or offline 00030 std::string m_workdir; // by default workdir=. 00031 std::string m_datafile_dir; // dir of data files are in 00032 std::vector<std::string> m_datafile_barrel; //specify input data file 00033 std::vector<std::string> m_datafile_endcap; //specify input data file 00034 std::vector<std::string> m_datafile_etf; //specify input data file 00035 std::vector<std::string> m_barrelfile; //specify input data file 00036 std::vector<std::string> m_endcapfile; //specify input data file 00037 std::vector<std::string> m_etffile; //specify input data file 00038 std::string m_calibItem; 00039 // bit 1 1 1 1 1 1 1 1 1 1 1 1; 00040 // Endcap Barrel: Q0, EffV, AttenLength, Time 00041 unsigned int m_tcorrzbin; // the bin for time correltation 00042 unsigned int m_barrelzbin; // the bin for barrel sigma calibration 00043 unsigned int m_endcaprbin; // the bin for endcap sigma calibration 00044 unsigned int m_endcapQrbin; // the bin for endcap Q calibration 00045 00046 bool FILE_HAS_BEEN_READ; // indicate that 00047 00048 TofCalibCheck* m_checkbarrel; 00049 NTuple::Tuple* mtuple_barrel; 00050 TofCalibCheck* m_checkendcap; 00051 NTuple::Tuple* mtuple_endcap; 00052 TofCalibCheck* m_checketf; 00053 NTuple::Tuple* mtuple_etf; 00054 }; 00055 00056 #endif//tofcalgsec_Header