00001 #ifndef CALPEDCALIB_H 00002 #define CALPEDCALIB_H 00003 00004 #include <string> 00005 // #include "Event/serviceI.h" 00006 // #include "Event/trsDataVI.h" 00007 #include "CalRecon/CalBase.h" 00008 #include "CalRecon/CalADCLogs.h" 00009 00010 00011 //########################################### 00012 class CalPedCalib : public CalADCLogs 00013 //########################################### 00014 { 00015 public: 00016 00017 // construct 00018 CalPedCalib() {ini(); } 00019 ~CalPedCalib() {} 00020 00021 void setFileName(const std::string& filename) { m_fileName = filename;} 00022 00024 // virtual void defineOption(); 00025 00026 void setNegGain(CalBase::RANGE r, double v) {m_gain[CalBase::NEG][r] = v;} 00027 void setPosGain(CalBase::RANGE r, double v) {m_gain[CalBase::POS][r] = v;} 00028 00029 // access 00030 double gain(CalBase::SIDE s, CalBase::RANGE r) const {return m_gain[s][r];} 00031 00032 // operation 00033 virtual void clear(); 00034 virtual void make(); 00035 00036 00037 protected: 00038 00039 virtual void ini(); 00040 00041 private: 00042 00043 void readGain(std::istream& file); 00044 void readPedestal(std::istream& file); 00045 00046 private: 00047 00048 std::string m_fileName; 00049 double m_gain[CALNSIDES][CALNRANGES]; 00050 }; 00051 #endif