00001 /* 00002 * CalibAlg 00003 * 00004 * Calibration Algorithm 00005 * 00006 * wenlj@ihep.ac.cn 2008/11/09 00007 * 00008 */ 00009 00010 #ifndef CALIBALG_H 00011 #define CALIBALG_H 1 00012 00013 #include "DybAlg/DybAlgorithm.h" 00014 #include "Event/ReadoutHeader.h" 00015 #include "Event/CalibReadoutHeader.h" 00016 00017 #include <string> 00018 00019 class ICalibTool; 00020 00021 class CalibAlg : public DybAlgorithm<DayaBay::CalibReadoutHeader> 00022 { 00023 public: 00024 CalibAlg(const std::string& name,ISvcLocator* pSvcLocator); 00025 virtual ~CalibAlg(); 00026 00027 virtual StatusCode initialize(); 00028 virtual StatusCode execute(); 00029 virtual StatusCode finalize(); 00030 00031 private: 00032 00037 std::string m_roLocation; 00038 00043 std::string m_calibRoLocation; 00044 00045 // Names of the RPC calibration tool 00046 std::string m_calibRpcToolName; 00047 00048 // Tool for the RPC calibration 00049 ICalibTool* m_calibRpcTool; 00050 00051 // Names of the PMT calibration tool 00052 std::string m_calibPmtToolName; 00053 00054 // Tool for the PMT calibration 00055 ICalibTool* m_calibPmtTool; 00056 00057 }; 00058 00059 #endif // CALIBALG_H