00001 00012 #ifndef QSUMLINEARITYENERGYTOOL_H 00013 #define QSUMLINEARITYENERGYTOOL_H 1 00014 00015 #include "ReconAlg/IReconTool.h" 00016 #include "GaudiAlg/GaudiTool.h" 00017 00018 namespace DayaBay{ 00019 class CalibReadout; 00020 class RecTrigger; 00021 } 00022 00023 class ICableSvc; 00024 class ICalibDataSvc; 00025 00026 class QsumLinearityEnergyTool : public GaudiTool , virtual public IReconTool 00027 { 00028 public: 00029 00030 QsumLinearityEnergyTool(const std::string& type, 00031 const std::string& name, 00032 const IInterface* parent); 00033 00034 virtual ~QsumLinearityEnergyTool(); 00035 00036 virtual StatusCode reconstruct(const DayaBay::CalibReadout& readout, 00037 DayaBay::RecTrigger& recTrigger); 00038 virtual StatusCode initialize(); 00039 virtual StatusCode finalize(); 00040 00041 private: 00042 00043 // Property CableSvcName - Name of the cable service 00044 std::string m_cableSvcName; 00045 00046 // CableSvc 00047 ICableSvc* m_cableSvc; 00048 00049 // Property CalibDataSvcName - Name of the CalibData service 00050 std::string m_calibDataSvcName; 00051 00052 // Pmt calibration data Service 00053 ICalibDataSvc* m_calibDataSvc; 00054 00055 }; 00056 00057 #endif // QSUMLINEARITYENERGYTOOL_H