/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Mdc/MdcCalibAlg/MdcCalibAlg-00-09-02/share/distcalib/src/include/MdcCalibConst.h

Go to the documentation of this file.
00001 #ifndef MDCCALIBCONST_H
00002 #define MDCCALIBCONST_H
00003 
00004 #include <map>
00005 #include <vector>
00006 
00007 class MdcCalibConst {
00008 
00009 public:
00010      MdcCalibConst();
00011      MdcCalibConst(const MdcCalibConst& calconst);
00012 
00013      void   fillXtpar(int key, double val);
00014      void   resetXtpar(int lay, int entr, int lr, int order, double val);
00015      int    getXtSize() const { return m_xtmap.size(); }
00016      void   setXtBegin();
00017      int    getNextXtpar(int& key, double& xtpar);
00018      double getXtpar(int lay, int entr, int lr, int order);
00019      int    getXtKey(int lay, int entr, int lr, int order) const;
00020 
00021      void   fillT0(double val)    { m_t0.push_back( val ); }
00022      void   fillDelT0(double val) { m_delt0.push_back( val ); }
00023      void   resetT0(int wireid, double val)    { m_t0[wireid] = val; }
00024      void   resetDelT0(int wireid, double val) { m_delt0[wireid] = val; }
00025      double getT0(int wireid)    const { return m_t0[wireid]; }
00026      double getDelT0(int wireid) const { return m_delt0[wireid]; }
00027      int    getT0Size() const { return m_t0.size(); }
00028 
00029 /*      void   fillWshift(double val)    { m_wshift.push_back( val ); } */
00030 /*      void   fillDelWshift(double val) { m_delwshift.push_back( val ); } */
00031 /*      void   resetWshift(int wireid, double val)   {m_wshift[wireid] = val;} */
00032 /*      void   resetDelWshift(int wireid, double val){m_delwshift[wireid] = val;} */
00033 /*      double getWshift(int wireid)    const { return m_wshift[wireid]; } */
00034 /*      double getDelWshift(int wireid) const { return m_delwshift[wireid]; } */
00035 /*      int    getWshSize() const { return m_wshift.size(); } */
00036 
00037      void   fillQtpar(int order, double val);
00038      void   fillQtpar0(double val) { m_qtpar0.push_back( val ); }
00039      void   fillQtpar1(double val) { m_qtpar1.push_back( val ); }
00040      void   resetQtpar(int lay, int order, double val);
00041      void   resetQtpar0(int lay, double val) { m_qtpar0[lay] = val; }
00042      void   resetQtpar1(int lay, double val) { m_qtpar1[lay] = val; }
00043      double getQtpar(int lay, int order) const;
00044      double getQtpar0(int lay) const { return m_qtpar0[lay]; }
00045      double getQtpar1(int lay) const { return m_qtpar1[lay]; }
00046      int    getQtSize() const { return m_qtpar0.size(); }
00047 
00048      void   fillSdpar(int key, double val);
00049      void   resetSdpar(int lay, int entr, int lr, int bin, double val);
00050      int    getSdSize() const { return m_sdmap.size(); }
00051      void   setSdBegin();
00052      int    getNextSdpar(int& key, double& sdpar);
00053      double getSdpar(int lay, int entr, int lr, int bin);
00054      int getSdKey(int lay, int entr, int lr, int bin) const;
00055 
00056      void   clear();
00057 
00058 private:
00059      std::map<int, double> m_xtmap;
00060      std::vector<double>   m_t0;
00061      std::vector<double>   m_delt0;
00062 /*      std::vector<double>   m_wshift; */
00063 /*      std::vector<double>   m_delwshift; */
00064      std::vector<double>   m_qtpar0;
00065      std::vector<double>   m_qtpar1;
00066      std::map<int, double> m_sdmap;
00067 
00068      std::map<int, double>::iterator m_xtiter;
00069      std::map<int, double>::iterator m_sditer;
00070 
00071      static const int XTLAYER_INDEX    = 11;
00072      static const int XTLAYER_MASK     = 0x1F800;
00073 
00074      static const int XTENTRA_INDEX    = 6;
00075      static const int XTENTRA_MASK     = 0x7C0;
00076 
00077      static const int XTLR_INDEX       = 4;
00078      static const int XTLR_MASK        = 0x30;
00079 
00080      static const int XTORDER_INDEX    = 0;
00081      static const int XTORDER_MASK     = 0xF;
00082 
00083 
00084      static const int SDLAYER_INDEX    = 10;
00085      static const int SDLAYER_MASK     = 0xFC00;
00086 
00087      static const int SDENTRA_INDEX    = 7;
00088      static const int SDENTRA_MASK     = 0x380;
00089 
00090      static const int SDLR_INDEX       = 5;
00091      static const int SDLR_MASK        = 0x60;
00092 
00093      static const int SDBIN_INDEX      = 0;
00094      static const int SDBIN_MASK       = 0x1F;
00095 };
00096 
00097 #endif /* MDCCALIBCONST_H */

Generated on Tue Nov 29 23:12:49 2016 for BOSS_7.0.2 by  doxygen 1.4.7