00001 // $Header: /bes/bes/BossCvs/Calibration/CalibData/CalibData/Dedx/DedxSimData.h,v 1.5 2016/09/14 05:26:18 zhaog Exp $ 00002 #ifndef CalibData_DedxSimData_h 00003 #define CalibData_DedxSimData_h 00004 00005 /* @class CalibData_DedxSimData_h 00006 00007 calibration data class 00008 calibration infrastructure 00009 00010 @author huangb 00011 */ 00012 00013 #include "CalibData/CalibModel.h" 00014 #include "CalibData/CalibBase1.h" 00015 #include "TH1F.h" 00016 #include <vector> 00017 using namespace std; 00018 00019 namespace CalibData { 00020 class DedxSimData: public CalibBase1{ 00021 00022 public: 00023 DedxSimData(){ 00024 m_hist=0; 00025 m_hRange=0; 00026 }; 00027 00028 virtual ~DedxSimData() {} 00029 00030 // Re-implemented from DataObject 00031 inline virtual const CLID& clID() const { return classID(); } 00032 00033 inline static const CLID& classID() { return CLID_Dedx_Sim; } 00034 00035 virtual StatusCode update(CalibBase1& other, MsgStream* log); 00036 00037 int getVersion() const { return m_ver; } 00038 int getRangeNo() const { return m_bgNo; } 00039 double getRange(int i) const{return *((m_hRange->begin())+i);} 00040 int getThetaNo() const { return m_thetaNo; } 00041 int gethistNo() const{return m_histNo;} 00042 TH1F getHist(int i) const{return *((m_hist->begin())+i);} 00043 00044 void setVersion(const int ver) { m_ver = ver; } 00045 void setHistNo(const int No) {m_histNo=No;} 00046 void setHist(const vector<TH1F>* hist); 00047 // void setHist(TH1F hist){m_hist->push_back(hist);} 00048 void setRange(const vector<double>* hRange); 00049 void setRangeNo(const int No) { m_bgNo = No; } 00050 void setThetaNo(const int No) { m_thetaNo = No; } 00051 00052 private: 00053 int m_ver; 00054 int m_histNo; 00055 int m_bgNo; 00056 int m_thetaNo; 00057 vector<TH1F>* m_hist; 00058 vector<double>* m_hRange; 00059 }; 00060 } 00061 00062 00063 #endif