00001 #ifndef MDCAlign_H 00002 #define MDCAlign_H 00003 00004 #include "MdcGeomSvc/IMdcGeomSvc.h" 00005 #include "MdcGeomSvc/MdcGeomSvc.h" 00006 #include "MdcGeomSvc/MdcGeoWire.h" 00007 #include "MdcGeomSvc/MdcGeoLayer.h" 00008 00009 #include "MdcCalibFunSvc/IMdcCalibFunSvc.h" 00010 #include "MdcCalibFunSvc/MdcCalibFunSvc.h" 00011 00012 #include "MdcAlignAlg/MdcAlignPar.h" 00013 #include "MdcAlignAlg/MdcAliEvent.h" 00014 00015 #include "TObjArray.h" 00016 00017 class MdcAlign { 00018 public: 00019 MdcAlign(); 00020 virtual ~MdcAlign(); 00021 virtual void clear() = 0; 00022 virtual void initialize(TObjArray* hlist, IMdcGeomSvc* mdcGeomSvc, 00023 IMdcCalibFunSvc* mdcFunSvc) = 0; 00024 00025 virtual void setParam(MdcAliParams& param) = 0; 00026 virtual bool fillHist(MdcAliEvent* event) = 0; 00027 virtual void updateConst(MdcAlignPar* alignPar) = 0; 00028 public: 00029 std::string fixMomLab; 00030 private: 00031 MdcAliParams m_param; 00032 00033 }; 00034 00035 inline void MdcAlign::setParam(MdcAliParams& param){ 00036 m_param = param; 00037 } 00038 00039 #endif /* MDCAlign_H */