/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/RootEventData/RootEventData-00-03-80/RootEventData/TMdcKalTrack.h

Go to the documentation of this file.
00001 #ifndef RootEventData_TMdcKalTrack_H
00002 #define RootEventData_TMdcKalTrack_H 1
00003 
00004 #include "TObject.h"
00005 #include "TString.h"
00006 #include "SimMatr.h"
00007 
00008 class TMdcKalTrack : public TObject {
00009     
00010 public:
00011     
00012     TMdcKalTrack();
00013     
00014     ~TMdcKalTrack ();
00015     
00016     //extractors
00017     Int_t    getTrackId() const { return m_trackId;  }
00018     Int_t    getStat(const Int_t pid) const { return m_stat[pid]; }        
00019     Int_t    getStat2(const Int_t pid) const { return m_stat2[pid]; }        
00020     Double_t getChisq(const Int_t pid) const { return m_chisq[pid];}
00021     Int_t    getNdf(const Int_t pid) const { return m_ndf[pid]; }
00022     Int_t    getNlayer(const Int_t pid) const { return m_nlayer[pid]; }
00023     //o Int_t    getNster(const Int_t pid) const {return m_nster[pid];}
00024     //o Int_t    getFirstLayer(const Int_t pid) const { return m_firstLayer[pid]; }
00025     //o Int_t    getLastLayer(const Int_t pid) const {return m_lastLayer[pid];}
00026     
00027     Double_t getZHelix(Int_t i) const {return m_zhelix[i];}
00028     Double_t getZError(Int_t i, Int_t j) const {
00029         return SimMat::get_element(m_zerror,i,j);       }
00030     //Double_t getPoca(Int_t i) const {return m_poca[i];} 
00031     Double_t getZHelixE(Int_t i) const {return m_zhelix_e[i];}            
00032     Double_t getZErrorE(Int_t i, Int_t j) const {
00033         return SimMat::get_element(m_zerror_e,i,j);     }
00034     //Double_t getPocaE(Int_t i) const {return m_poca_e[i];}
00035     Double_t getZHelixMu(Int_t i) const {return m_zhelix_mu[i];}            
00036     Double_t getZErrorMu(Int_t i, Int_t j) const {
00037         return SimMat::get_element(m_zerror_mu,i,j);    }
00038     //Double_t getPocaMu(Int_t i) const {return m_poca_mu[i];}
00039     Double_t getZHelixK(Int_t i) const {return m_zhelix_k[i];}            
00040     Double_t getZErrorK(Int_t i, Int_t j) const {
00041         return SimMat::get_element(m_zerror_k,i,j);     }
00042     //Double_t getPocaK(Int_t i) const {return m_poca_k[i];}
00043     Double_t getZHelixP(Int_t i) const {return m_zhelix_p[i];}            
00044     Double_t getZErrorP(Int_t i, Int_t j) const {
00045         return SimMat::get_element(m_zerror_p,i,j);     }     
00046     //Double_t getPocaP(Int_t i) const {return m_poca_p[i];}    
00047          
00048     Double_t getFHelix(Int_t i) const {return m_fhelix[i];}
00049     Double_t getFError(Int_t i, Int_t j) const {
00050         return SimMat::get_element(m_ferror,i,j);       }
00051     Double_t getFHelixE(Int_t i) const {return m_fhelix_e[i];}            
00052     Double_t getFErrorE(Int_t i, Int_t j) const {
00053         return SimMat::get_element(m_ferror_e,i,j);     }
00054     Double_t getFHelixMu(Int_t i) const {return m_fhelix_mu[i];}            
00055     Double_t getFErrorMu(Int_t i, Int_t j) const {
00056         return SimMat::get_element(m_ferror_mu,i,j);    }
00057     Double_t getFHelixK(Int_t i) const {return m_fhelix_k[i];}            
00058     Double_t getFErrorK(Int_t i, Int_t j) const {
00059         return SimMat::get_element(m_ferror_k,i,j);     }
00060     Double_t getFHelixP(Int_t i) const {return m_fhelix_p[i];}            
00061     Double_t getFErrorP(Int_t i, Int_t j) const {
00062         return SimMat::get_element(m_ferror_p,i,j);     }     
00063     //modifiers
00064     void setTrackId (const Int_t trackId) { m_trackId = trackId; }
00065     void setStat(const Int_t stat, const Int_t pid) {m_stat[pid] = stat;}
00066     void setStat2(const Int_t stat, const Int_t pid) {m_stat2[pid] = stat;}
00067     void setChisq(const Double_t chisq, const Int_t pid) {m_chisq[pid] = chisq;}
00068     void setNdf(const Int_t ndf, const Int_t pid) {m_ndf[pid] = ndf;}
00069     void setNlayer(const Int_t nlayer, const Int_t pid) {m_nlayer[pid] = nlayer;}
00070     //o void setNster(const Int_t nster, const Int_t pid) {m_nster[pid] = nster;}
00071     //o void setFirstLayer(const Int_t fL, const Int_t pid) { m_firstLayer[pid] = fL; }
00072     //o void setLastLayer(const Int_t lL, const Int_t pid){ m_lastLayer[pid] = lL;}
00073     
00074     void setZHelix(const Double_t zhelix[5]){
00075       for (int i=0; i<5; i++)
00076         m_zhelix[i] = zhelix[i];
00077     }
00078     void setZError(const Double_t zerror[5][5]){
00079       SimMat::pack2d(5,&zerror[0][0],m_zerror);
00080     }
00081     
00082     //void setPoca(const Double_t poca[3]){
00083     //  for(int i=0; i<3; i++) m_poca[i] = poca[i];
00084     //}
00085     
00086     void setZHelixE(const Double_t zhelix_e[5]){   
00087       for (int i = 0 ; i<5 ; i++)             
00088         m_zhelix_e[i] = zhelix_e[i];             
00089     }                                          
00090     void setZErrorE(const Double_t zerror_e[5][5]){
00091       SimMat::pack2d(5,&zerror_e[0][0],m_zerror_e);
00092     }   
00093     //void setPocaE(const Double_t poca_e[3]){
00094     //  for(int i=0; i<3; i++) m_poca_e[i] = poca_e[i];
00095     //}
00096     
00097     void setZHelixMu(const Double_t zhelix_mu[5]){   
00098       for (int i = 0 ; i<5 ; i++)             
00099         m_zhelix_mu[i] = zhelix_mu[i];             
00100     }                                          
00101     void setZErrorMu(const Double_t zerror_mu[5][5]){
00102       SimMat::pack2d(5,&zerror_mu[0][0],m_zerror_mu);
00103     }
00104     //void setPocaMu(const Double_t poca_mu[3]){
00105     //  for(int i=0; i<3; i++) m_poca_mu[i] = poca_mu[i];
00106     //}
00107     
00108     void setZHelixK(const Double_t zhelix_k[5]){             
00109       for (int i = 0 ; i<5 ; i++)                  
00110         m_zhelix_k[i] = zhelix_k[i];            
00111     }                                               
00112     void setZErrorK(const Double_t zerror_k[5][5]){
00113       SimMat::pack2d(5,&zerror_k[0][0],m_zerror_k);
00114     }               
00115     //void setPocaK(const Double_t poca_k[3]){
00116     //  for(int i=0; i<3; i++) m_poca_k[i] = poca_k[i];
00117     //}
00118     
00119     void setZHelixP(const Double_t zhelix_p[5]){   
00120       for (int i = 0 ; i<5 ; i++)                  
00121         m_zhelix_p[i] = zhelix_p[i];            
00122     }                                               
00123     void setZErrorP(const Double_t zerror_p[5][5]){
00124       SimMat::pack2d(5,&zerror_p[0][0],m_zerror_p);
00125     }                                               
00126     //void setPocaP(const Double_t poca_p[3]){
00127     //  for(int i=0; i<3; i++) m_poca_p[i] = poca_p[i];
00128     //}
00129 
00130     void setFHelix(const Double_t fhelix[5]){
00131       for (int i=0; i<5; i++)
00132         m_fhelix[i] = fhelix[i];
00133     }
00134     void setFError(const Double_t ferror[5][5]){
00135       SimMat::pack2d(5,&ferror[0][0],m_ferror);
00136     }
00137     
00138     void setFHelixE(const Double_t fhelix_e[5]){   
00139       for (int i = 0 ; i<5 ; i++)             
00140         m_fhelix_e[i] = fhelix_e[i];             
00141     }                                          
00142     void setFErrorE(const Double_t ferror_e[5][5]){
00143       SimMat::pack2d(5,&ferror_e[0][0],m_ferror_e);
00144     }   
00145 
00146     void setFHelixMu(const Double_t fhelix_mu[5]){
00147       for (int i = 0 ; i<5 ; i++)
00148         m_fhelix_mu[i] = fhelix_mu[i];
00149     }                  
00150     void setFErrorMu(const Double_t ferror_mu[5][5]){
00151       SimMat::pack2d(5,&ferror_mu[0][0],m_ferror_mu);
00152     }   
00153 
00154     void setFHelixK(const Double_t fhelix_k[5]){
00155       for (int i = 0 ; i<5 ; i++)
00156         m_fhelix_k[i] = fhelix_k[i];
00157     }                  
00158     void setFErrorK(const Double_t ferror_k[5][5]){
00159       SimMat::pack2d(5,&ferror_k[0][0],m_ferror_k);
00160     }   
00161 
00162     void setFHelixP(const Double_t fhelix_p[5]){
00163       for (int i = 0 ; i<5 ; i++)
00164         m_fhelix_p[i] = fhelix_p[i];
00165     }                  
00166     void setFErrorP(const Double_t ferror_p[5][5]){
00167       SimMat::pack2d(5,&ferror_p[0][0],m_ferror_p);
00168     }   
00169 
00170 
00171 private:
00172    Int_t    m_trackId;       
00173    Int_t    m_stat[5];  
00174    Int_t    m_stat2[5];  
00175    Double_t m_chisq[5]; 
00176    Int_t    m_ndf[5]; 
00177    Int_t    m_nlayer[5]; 
00178    //o Int_t    m_nster[5];
00179    //o Int_t    m_firstLayer[5];
00180    //o Int_t    m_lastLayer[5];    
00181 
00182    //Double_t m_poca[3];
00183    Double_t m_zhelix[5];      // 5 track parameters at zero point for pi   
00184    //o Double_t m_zerror[5][5];   // error matrix at zero point for pion       
00185    Double_t m_zerror[15];     // error matrix at zero point for pion       
00186 
00187    //Double_t m_poca_e[3];
00188    Double_t m_zhelix_e[5];    // 5 track parameters at zero point for el   
00189    //o Double_t m_zerror_e[5][5]; // error matrix at zero point for electron   
00190    Double_t m_zerror_e[15];   // error matrix at zero point for electron   
00191 
00192    //Double_t m_poca_mu[3];
00193    Double_t m_zhelix_mu[5];   // 5 track parameters at zero point for mu   
00194    //o Double_t m_zerror_mu[5][5];// error matrix at zero point  for muon   ;  
00195    Double_t m_zerror_mu[15];  // error matrix at zero point  for muon   ;  
00196 
00197    //Double_t m_poca_k[3];   
00198    Double_t m_zhelix_k[5];    // 5 track parameters at zero point for ka   
00199    //o Double_t m_zerror_k[5][5]; // error matrix at zero point for kaon       
00200    Double_t m_zerror_k[15];   // error matrix at zero point for kaon       
00201   
00202    //Double_t m_poca_p[3]; 
00203    Double_t m_zhelix_p[5];    // 5 track parameters at zero point for pr   
00204    //o Double_t m_zerror_p[5][5]; // error matrix at zero point for proton     
00205    Double_t m_zerror_p[15];   // error matrix at zero point for proton     
00206 
00207    Double_t m_fhelix[5];      // 5 track parameters at first Mdchit  for pi   
00208    //o Double_t m_ferror[5][5];   // error matrix at first Mdc hit for pion    
00209    Double_t m_ferror[15];     // error matrix at first Mdc hit for pion    
00210    Double_t m_fhelix_e[5];
00211    //o Double_t m_ferror_e[5][5];
00212    Double_t m_ferror_e[15];
00213    Double_t m_fhelix_mu[5];
00214    //o Double_t m_ferror_mu[5][5];
00215    Double_t m_ferror_mu[15];
00216    Double_t m_fhelix_k[5];
00217    //o Double_t m_ferror_k[5][5];
00218    Double_t m_ferror_k[15];
00219    Double_t m_fhelix_p[5];
00220    //o Double_t m_ferror_p[5][5];
00221    Double_t m_ferror_p[15];
00222    
00223    ClassDef(TMdcKalTrack,3)
00224 };
00225 
00226 #endif 

Generated on Tue Nov 29 23:11:40 2016 for BOSS_7.0.2 by  doxygen 1.4.7