Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

MdcAliRecTrk Class Reference

#include <MdcAliRecTrk.h>

List of all members.

Public Member Functions

double getChisq () const
double getChisq () const
double getDr () const
double getDr () const
double getDz () const
double getDz () const
HepVector getHelix () const
HepVector getHelix () const
HepSymMatrix getHelixErr () const
HepSymMatrix getHelixErr () const
double getKappa () const
double getKappa () const
int getNHits () const
int getNHits () const
double getP () const
double getP () const
double getPhi0 () const
double getPhi0 () const
double getPt () const
double getPt () const
MdcAliRecHitgetRecHit (int index) const
MdcAliRecHitgetRecHit (int index) const
int getStat () const
int getStat () const
double getTanLamda () const
double getTanLamda () const
void setKalTrk (RecMdcKalTrackCol::iterator it_trk)
void setKalTrk (RecMdcKalTrackCol::iterator it_trk)
void setRecTrk (RecMdcTrackCol::iterator it_trk)
void setRecTrk (RecMdcTrackCol::iterator it_trk)
 ~MdcAliRecTrk ()
 ~MdcAliRecTrk ()

Private Attributes

double m_chisq
double m_dr
double m_dz
HepVector m_helix
HepSymMatrix m_helixerr
double m_kappa
int m_nhits
double m_p
double m_phi0
double m_pt
std::vector< MdcAliRecHit * > m_rechit
std::vector< MdcAliRecHit * > m_rechit
int m_stat
double m_tanl

Static Private Attributes

const double m_df = 10.0


Constructor & Destructor Documentation

MdcAliRecTrk::~MdcAliRecTrk  ) 
 

00013                            {
00014      unsigned int i;
00015      for(i=0; i<m_rechit.size(); i++){
00016           delete m_rechit[i];
00017      }
00018      m_rechit.clear();
00019 }

MdcAliRecTrk::~MdcAliRecTrk  ) 
 


Member Function Documentation

double MdcAliRecTrk::getChisq  )  const [inline]
 

00036 { return m_chisq; }

double MdcAliRecTrk::getChisq  )  const [inline]
 

00036 { return m_chisq; }

double MdcAliRecTrk::getDr  )  const [inline]
 

00027 { return m_dr; }

double MdcAliRecTrk::getDr  )  const [inline]
 

00027 { return m_dr; }

double MdcAliRecTrk::getDz  )  const [inline]
 

00030 { return m_dz; }

double MdcAliRecTrk::getDz  )  const [inline]
 

00030 { return m_dz; }

HepVector MdcAliRecTrk::getHelix  )  const [inline]
 

00032 { return m_helix; }

HepVector MdcAliRecTrk::getHelix  )  const [inline]
 

00032 { return m_helix; }

HepSymMatrix MdcAliRecTrk::getHelixErr  )  const [inline]
 

00033 { return m_helixerr; }

HepSymMatrix MdcAliRecTrk::getHelixErr  )  const [inline]
 

00033 { return m_helixerr; }

double MdcAliRecTrk::getKappa  )  const [inline]
 

00029 { return m_kappa; }

double MdcAliRecTrk::getKappa  )  const [inline]
 

00029 { return m_kappa; }

int MdcAliRecTrk::getNHits  )  const [inline]
 

00037 { return m_nhits; }

int MdcAliRecTrk::getNHits  )  const [inline]
 

00037 { return m_nhits; }

double MdcAliRecTrk::getP  )  const [inline]
 

00035 { return m_p; }

double MdcAliRecTrk::getP  )  const [inline]
 

00035 { return m_p; }

double MdcAliRecTrk::getPhi0  )  const [inline]
 

00028 { return m_phi0; }

double MdcAliRecTrk::getPhi0  )  const [inline]
 

00028 { return m_phi0; }

double MdcAliRecTrk::getPt  )  const [inline]
 

00034 { return m_pt; }

double MdcAliRecTrk::getPt  )  const [inline]
 

00034 { return m_pt; }

MdcAliRecHit* MdcAliRecTrk::getRecHit int  index  )  const [inline]
 

00038 { return m_rechit[index]; }

MdcAliRecHit* MdcAliRecTrk::getRecHit int  index  )  const [inline]
 

00038 { return m_rechit[index]; }

int MdcAliRecTrk::getStat void   )  const [inline]
 

00026 {return m_stat;}

int MdcAliRecTrk::getStat void   )  const [inline]
 

00026 {return m_stat;}

double MdcAliRecTrk::getTanLamda  )  const [inline]
 

00031 { return m_tanl; }

double MdcAliRecTrk::getTanLamda  )  const [inline]
 

00031 { return m_tanl; }

void MdcAliRecTrk::setKalTrk RecMdcKalTrackCol::iterator  it_trk  ) 
 

void MdcAliRecTrk::setKalTrk RecMdcKalTrackCol::iterator  it_trk  ) 
 

00061                                                             {
00062      IMessageSvc *msgSvc;
00063      Gaudi::svcLocator()->service("MessageSvc", msgSvc);
00064      MsgStream log(msgSvc, "MdcAliRecTrk");
00065      log << MSG::DEBUG << "MdcAliRecTrk::setKalTrk()" << endreq;
00066 
00067      int m_pid = 1;
00068      if(0 == m_pid) RecMdcKalTrack::setPidType(RecMdcKalTrack::electron);
00069      else if(1 == m_pid) RecMdcKalTrack::setPidType(RecMdcKalTrack::muon);
00070      else RecMdcKalTrack::setPidType(RecMdcKalTrack::electron);
00071 
00072      m_stat = 0;
00073      m_dr = (*it_trk)->dr();
00074      m_phi0 = (*it_trk)->fi0();
00075      m_kappa = (*it_trk)->kappa();
00076      m_dz = (*it_trk)->dz();
00077      m_tanl = (*it_trk)->tanl();
00078      m_chisq = (*it_trk)->chi2();
00079 
00080      m_dr *= 10.0;              // cm -> mm
00081      m_dz *= 10.0;              // cm -> mm
00082 
00083      m_pt = 1.0 / fabs(m_kappa);
00084      m_p = m_pt * sqrt( m_tanl * m_tanl + 1.0 );
00085 
00086      HelixSegRefVec gothelixsegs = (*it_trk)->getVecHelixSegs();
00087      HelixSegRefVec::iterator it_hit = gothelixsegs.begin();
00088      MdcAliRecHit* rechit;
00089 
00090      int k = 0;
00091      for(; it_hit != gothelixsegs.end(); it_hit++){
00092           rechit = new MdcAliRecHit();
00093           rechit->setKalHit(it_hit);
00094           m_rechit.push_back(rechit);
00095 
00096           k++;
00097      }
00098      m_nhits = k;
00099 }

void MdcAliRecTrk::setRecTrk RecMdcTrackCol::iterator  it_trk  ) 
 

void MdcAliRecTrk::setRecTrk RecMdcTrackCol::iterator  it_trk  ) 
 

00021                                                          {
00022      IMessageSvc *msgSvc;
00023      Gaudi::svcLocator()->service("MessageSvc", msgSvc);
00024      MsgStream log(msgSvc, "MdcAliRecTrk");
00025      log << MSG::DEBUG << "MdcAliRecTrk::setRecTrk()" << endreq;
00026 
00027      m_stat = (*it_trk)->stat();
00028      m_dr = (*it_trk) -> helix(0);
00029      m_phi0 = (*it_trk) -> helix(1);
00030      m_kappa = (*it_trk) -> helix(2);
00031      m_dz = (*it_trk) -> helix(3);
00032      m_tanl = (*it_trk) -> helix(4);
00033 
00034      m_helix = (*it_trk)->helix();
00035      m_helixerr = (*it_trk)->err();
00036 
00037      m_chisq = (*it_trk) -> chi2();
00038      m_nhits = (*it_trk) -> getNhits();
00039 
00040      m_dr *= m_df;              // cm -> mm
00041      m_dz *= m_df;              // cm -> mm
00042 
00043      if(m_kappa < 0.01){        // no magnetic field
00044           m_pt = 0.0;
00045           m_p = 0.0;
00046      }else{
00047           m_pt = 1.0 / m_kappa;
00048           m_p = m_pt * sqrt(m_tanl * m_tanl + 1.0);
00049      }
00050 
00051      HitRefVec gothits = (*it_trk) -> getVecHits();
00052      HitRefVec::iterator it_hit = gothits.begin();
00053      MdcAliRecHit* rechit;
00054      for(; it_hit != gothits.end(); it_hit++){
00055           rechit = new MdcAliRecHit();
00056           rechit->setRecHit(it_hit);
00057           m_rechit.push_back(rechit);
00058      }
00059 }


Member Data Documentation

double MdcAliRecTrk::m_chisq [private]
 

const double MdcAliRecTrk::m_df = 10.0 [static, private]
 

double MdcAliRecTrk::m_dr [private]
 

double MdcAliRecTrk::m_dz [private]
 

HepVector MdcAliRecTrk::m_helix [private]
 

HepSymMatrix MdcAliRecTrk::m_helixerr [private]
 

double MdcAliRecTrk::m_kappa [private]
 

int MdcAliRecTrk::m_nhits [private]
 

double MdcAliRecTrk::m_p [private]
 

double MdcAliRecTrk::m_phi0 [private]
 

double MdcAliRecTrk::m_pt [private]
 

std::vector<MdcAliRecHit*> MdcAliRecTrk::m_rechit [private]
 

std::vector<MdcAliRecHit*> MdcAliRecTrk::m_rechit [private]
 

int MdcAliRecTrk::m_stat [private]
 

double MdcAliRecTrk::m_tanl [private]
 


The documentation for this class was generated from the following files:
Generated on Wed Feb 2 16:23:06 2011 for BOSS6.5.5 by  doxygen 1.3.9.1