BOSS 7.0.5
BESIII Offline Software System
Loading...
Searching...
No Matches
MdcAliRecTrk Class Reference

#include <MdcAliRecTrk.h>

Public Member Functions

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

Detailed Description

Constructor & Destructor Documentation

◆ ~MdcAliRecTrk() [1/2]

MdcAliRecTrk::~MdcAliRecTrk ( )

Definition at line 13 of file MdcAliRecTrk.cxx.

13 {
14 unsigned int i;
15 for(i=0; i<m_rechit.size(); i++){
16 delete m_rechit[i];
17 }
18 m_rechit.clear();
19}

◆ ~MdcAliRecTrk() [2/2]

MdcAliRecTrk::~MdcAliRecTrk ( )

Member Function Documentation

◆ getChisq() [1/2]

double MdcAliRecTrk::getChisq ( ) const
inline

Definition at line 36 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

36{ return m_chisq; }

◆ getChisq() [2/2]

double MdcAliRecTrk::getChisq ( ) const
inline

Definition at line 36 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

36{ return m_chisq; }

◆ getDr() [1/2]

double MdcAliRecTrk::getDr ( ) const
inline

Definition at line 27 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

27{ return m_dr; }

◆ getDr() [2/2]

double MdcAliRecTrk::getDr ( ) const
inline

Definition at line 27 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

27{ return m_dr; }

◆ getDz() [1/2]

double MdcAliRecTrk::getDz ( ) const
inline

Definition at line 30 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

30{ return m_dz; }

◆ getDz() [2/2]

double MdcAliRecTrk::getDz ( ) const
inline

Definition at line 30 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

30{ return m_dz; }

◆ getHelix() [1/2]

HepVector MdcAliRecTrk::getHelix ( ) const
inline

Definition at line 32 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

32{ return m_helix; }

Referenced by MilleAlign::fillHist().

◆ getHelix() [2/2]

HepVector MdcAliRecTrk::getHelix ( ) const
inline

Definition at line 32 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

32{ return m_helix; }

◆ getHelixErr() [1/2]

HepSymMatrix MdcAliRecTrk::getHelixErr ( ) const
inline

Definition at line 33 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

33{ return m_helixerr; }

Referenced by MilleAlign::fillHist().

◆ getHelixErr() [2/2]

HepSymMatrix MdcAliRecTrk::getHelixErr ( ) const
inline

Definition at line 33 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

33{ return m_helixerr; }

◆ getKappa() [1/2]

double MdcAliRecTrk::getKappa ( ) const
inline

Definition at line 29 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

29{ return m_kappa; }

◆ getKappa() [2/2]

double MdcAliRecTrk::getKappa ( ) const
inline

Definition at line 29 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

29{ return m_kappa; }

◆ getNHits() [1/2]

int MdcAliRecTrk::getNHits ( ) const
inline

Definition at line 37 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

37{ return m_nhits; }

Referenced by ResiAlign::fillHist().

◆ getNHits() [2/2]

int MdcAliRecTrk::getNHits ( ) const
inline

Definition at line 37 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

37{ return m_nhits; }

◆ getP() [1/2]

double MdcAliRecTrk::getP ( ) const
inline

Definition at line 35 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

35{ return m_p; }

◆ getP() [2/2]

double MdcAliRecTrk::getP ( ) const
inline

Definition at line 35 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

35{ return m_p; }

◆ getPhi0() [1/2]

double MdcAliRecTrk::getPhi0 ( ) const
inline

Definition at line 28 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

28{ return m_phi0; }

◆ getPhi0() [2/2]

double MdcAliRecTrk::getPhi0 ( ) const
inline

Definition at line 28 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

28{ return m_phi0; }

◆ getPt() [1/2]

double MdcAliRecTrk::getPt ( ) const
inline

Definition at line 34 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

34{ return m_pt; }

◆ getPt() [2/2]

double MdcAliRecTrk::getPt ( ) const
inline

Definition at line 34 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

34{ return m_pt; }

◆ getRecHit() [1/2]

MdcAliRecHit * MdcAliRecTrk::getRecHit ( int  index) const
inline

Definition at line 38 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

38{ return m_rechit[index]; }

Referenced by ResiAlign::fillHist().

◆ getRecHit() [2/2]

MdcAliRecHit * MdcAliRecTrk::getRecHit ( int  index) const
inline

Definition at line 38 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

38{ return m_rechit[index]; }

◆ getStat() [1/2]

int MdcAliRecTrk::getStat ( ) const
inline

Definition at line 26 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

26{return m_stat;}

Referenced by MilleAlign::fillHist(), and ResiAlign::fillHist().

◆ getStat() [2/2]

int MdcAliRecTrk::getStat ( ) const
inline

Definition at line 26 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

26{return m_stat;}

◆ getTanLamda() [1/2]

double MdcAliRecTrk::getTanLamda ( ) const
inline

Definition at line 31 of file InstallArea/include/MdcAlignAlg/MdcAlignAlg/MdcAliRecTrk.h.

31{ return m_tanl; }

◆ getTanLamda() [2/2]

double MdcAliRecTrk::getTanLamda ( ) const
inline

Definition at line 31 of file Mdc/MdcAlignAlg/MdcAlignAlg-00-01-04/MdcAlignAlg/MdcAliRecTrk.h.

31{ return m_tanl; }

◆ setKalTrk() [1/2]

void MdcAliRecTrk::setKalTrk ( RecMdcKalTrackCol::iterator  it_trk)

Definition at line 61 of file MdcAliRecTrk.cxx.

61 {
62 IMessageSvc *msgSvc;
63 Gaudi::svcLocator()->service("MessageSvc", msgSvc);
64 MsgStream log(msgSvc, "MdcAliRecTrk");
65 log << MSG::DEBUG << "MdcAliRecTrk::setKalTrk()" << endreq;
66
67 int m_pid = 1;
71
72 m_stat = 0;
73 m_dr = (*it_trk)->dr();
74 m_phi0 = (*it_trk)->fi0();
75 m_kappa = (*it_trk)->kappa();
76 m_dz = (*it_trk)->dz();
77 m_tanl = (*it_trk)->tanl();
78 m_chisq = (*it_trk)->chi2();
79
80 m_dr *= 10.0; // cm -> mm
81 m_dz *= 10.0; // cm -> mm
82
83 m_pt = 1.0 / fabs(m_kappa);
84 m_p = m_pt * sqrt( m_tanl * m_tanl + 1.0 );
85
86 HelixSegRefVec gothelixsegs = (*it_trk)->getVecHelixSegs();
87 HelixSegRefVec::iterator it_hit = gothelixsegs.begin();
88 MdcAliRecHit* rechit;
89
90 int k = 0;
91 for(; it_hit != gothelixsegs.end(); it_hit++){
92 rechit = new MdcAliRecHit();
93 rechit->setKalHit(it_hit);
94 m_rechit.push_back(rechit);
95
96 k++;
97 }
98 m_nhits = k;
99}
SmartRefVector< RecMdcKalHelixSeg > HelixSegRefVec
void setKalHit(HelixSegRefVec::iterator it_hit)

◆ setKalTrk() [2/2]

void MdcAliRecTrk::setKalTrk ( RecMdcKalTrackCol::iterator  it_trk)

◆ setRecTrk() [1/2]

void MdcAliRecTrk::setRecTrk ( RecMdcTrackCol::iterator  it_trk)

Definition at line 21 of file MdcAliRecTrk.cxx.

21 {
22 IMessageSvc *msgSvc;
23 Gaudi::svcLocator()->service("MessageSvc", msgSvc);
24 MsgStream log(msgSvc, "MdcAliRecTrk");
25 log << MSG::DEBUG << "MdcAliRecTrk::setRecTrk()" << endreq;
26
27 m_stat = (*it_trk)->stat();
28 m_dr = (*it_trk) -> helix(0);
29 m_phi0 = (*it_trk) -> helix(1);
30 m_kappa = (*it_trk) -> helix(2);
31 m_dz = (*it_trk) -> helix(3);
32 m_tanl = (*it_trk) -> helix(4);
33
34 m_helix = (*it_trk)->helix();
35 m_helixerr = (*it_trk)->err();
36
37 m_chisq = (*it_trk) -> chi2();
38 m_nhits = (*it_trk) -> getNhits();
39
40 m_dr *= m_df; // cm -> mm
41 m_dz *= m_df; // cm -> mm
42
43 if(m_kappa < 0.01){ // no magnetic field
44 m_pt = 0.0;
45 m_p = 0.0;
46 }else{
47 m_pt = 1.0 / m_kappa;
48 m_p = m_pt * sqrt(m_tanl * m_tanl + 1.0);
49 }
50
51 HitRefVec gothits = (*it_trk) -> getVecHits();
52 HitRefVec::iterator it_hit = gothits.begin();
53 MdcAliRecHit* rechit;
54 for(; it_hit != gothits.end(); it_hit++){
55 rechit = new MdcAliRecHit();
56 rechit->setRecHit(it_hit);
57 m_rechit.push_back(rechit);
58 }
59}
SmartRefVector< RecMdcHit > HitRefVec
void setRecHit(HitRefVec::iterator it_hit)

◆ setRecTrk() [2/2]

void MdcAliRecTrk::setRecTrk ( RecMdcTrackCol::iterator  it_trk)

The documentation for this class was generated from the following files: