/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Calibration/CalibData/CalibData-00-01-18/src/Dedx/DedxCalibData.cxx

Go to the documentation of this file.
00001 // $Header: /bes/bes/BossCvs/Calibration/CalibData/src/Dedx/DedxCalibData.cxx,v 1.9 2010/10/08 01:12:53 huangb Exp $
00002 
00007 #include "CalibData/Dedx/DedxCalibData.h"
00008 #include "GaudiKernel/MsgStream.h"
00009 #include "CalibData/Mdc/MdcCalStruct.h"
00010 namespace CalibData {
00011  
00012  
00013   StatusCode DedxCalibData::update(CalibBase1& other, MsgStream* log)
00014   {
00015     DedxCalibData& other1 = dynamic_cast<DedxCalibData& >(other);
00016     std::cout<<"========================================"<<"\n"<<"here is the update in the DedxCalibData"<<"\n"<<"=================================================="<<std::endl;
00017     CalibBase1::update(other, log);
00018     int i;
00019     int j;
00020     for(i=0;i<4;i++) {
00021       for(j=0;j<43;j++) { 
00022        /*  setddg(other1.m_ddg[i][j],i,j);
00023          setggs(other1.m_ggs[i][j],i,j);
00024          setzdep(other1.m_zdep[i][j],i,j);
00025          setenta(other1.m_enta[i][j],i,j);
00026 */
00027   //    getddg(int i,int j)
00028    //  std::cout<<"other1.getddg("<<i<<","<<j<<")="<<other1.getddg(i,j)<<std::endl;
00029       setddg(other1.getddg(i,j),i,j);
00030       setggs(other1.getggs(i,j),i,j);
00031       setzdep(other1.getzdep(i,j),i,j);
00032       setenta(other1.getenta(i,j),i,j);
00033         }
00034     }
00035 
00036     setrunNO(other1.getrunNO());   
00037     int entries = other1.getrunNO();
00038     for(i=0;i<4;i++) {
00039       for(j=0;j<entries;j++) {
00040       setrung(other1.getrung(i,j),i,j);
00041         }
00042     }
00043   
00044 
00045     for(i=0;i<6796;i++){
00046     //    setwireg(other1.m_wireg[i],i);
00047      setwireg(other1.getwireg(i),i);
00048     }  
00049    
00050     for(i=0;i<43;i++){
00051     //    setlayerg(other1.m_layerg[i],i);
00052      setlayerg(other1.getlayerg(i),i);
00053     }  
00054      
00055   //  setgain(other1.m_gain);
00056   //  setresol(other1.m_resol);
00057   setgain(other1.getgain());
00058   setresol(other1.getresol());
00059 
00060    for(int i=0;i<1600;i++){
00061     m_id_doca[i]=other1.get_id_doca(i);   
00062     m_iner_chi[i]=other1.get_iner_chi(i);
00063     m_iner_gain[i]=other1.get_iner_gain(i);
00064     m_iner_hits[i]=other1.get_iner_hits(i);
00065     m_ip_eangle[i]=other1.get_ip_eangle(i);
00066     m_out_chi[i]=other1.get_out_chi(i);
00067     m_out_gain[i]=other1.get_out_gain(i);
00068     m_out_hits[i]=other1.get_out_hits(i);
00069     }
00070 
00071     for(int i=0;i<80;i++){
00072     m_costheta[i]=other1.get_costheta(i); 
00073     }
00074    for(int i=0;i<35;i++){
00075     m_t0[i] = other1.get_t0(i);
00076     m_dedx[i]=other1.get_dedx(i);
00077     }
00078   
00079    for(int i=0;i<20;i++){
00080     m_hadron[i] = other1.get_hadron(i);
00081     }
00082    
00083     m_enanglesize=other1.get_enanglesize();
00084    for(int i=0;i<m_enanglesize;i++){
00085     m_enangle[i]=other1.get_enangle(i);
00086    }
00087   
00088    std::cout<<"updata dedx calib constnts complete================="<<std::endl;
00089     return StatusCode::SUCCESS;  
00090 }       
00091                                         
00092    //set the Calibration Data
00093   
00094 
00095   void DedxCalibData::setddg(const double ddg,int i,int j)
00096   { 
00097     m_ddg[i][j] = ddg;
00098   }
00099 
00100   void DedxCalibData::setggs(const double ggs,int i,int j)
00101   {
00102     m_ggs[i][j] = ggs;
00103   }
00104   
00105   void DedxCalibData::setwireg(const double wireg,int i)
00106   {
00107     m_wireg[i] = wireg;
00108   }
00109   
00110   void DedxCalibData::setgain(const double gain)
00111   {
00112     m_gain = gain;
00113   }
00114   
00115   void DedxCalibData::setzdep(const double zdep,int i,int j)
00116   {
00117     m_zdep[i][j] = zdep;
00118   }
00119   
00120   void DedxCalibData::setresol(const double resol)
00121   {
00122     m_resol = resol;
00123   }
00124   
00125   void DedxCalibData::setlayerg(const double layerg,int i)
00126   {
00127     m_layerg[i] = layerg;
00128   }
00129   
00130   void DedxCalibData::setenta(const double enta,int i,int j)
00131   {
00132     m_enta[i][j] = enta;
00133   }
00134  
00135   void DedxCalibData::setrung(const double rung,int i,int j)
00136   { 
00137    double aaa=rung;
00138     if(i==0) m_rung1.push_back(aaa);
00139     if(i==1) m_rung2.push_back(aaa);
00140     if(i==2) m_rung3.push_back(aaa);
00141     if(i==3) m_rung4.push_back(aaa);
00142   }
00143 
00144    void DedxCalibData::setrunNO(const int runNO)
00145   {
00146     m_runNO = runNO;
00147   }
00148 }

Generated on Tue Nov 29 22:57:48 2016 for BOSS_7.0.2 by  doxygen 1.4.7