BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Event/DstEvent/include/DstEvent/DstMucTrack.h
Go to the documentation of this file.
1#ifndef DST_MUCTRACK_H
2#define DST_MUCTRACK_H
3#include "EventModel/EventModel.h"
4#include "GaudiKernel/ContainedObject.h"
5#include "GaudiKernel/ObjectVector.h"
6#include <vector>
7
8using namespace std;
9
10using namespace EventModel;
11extern const CLID& CLID_DstMucTrack;
12
13// class MucTrack;
14class DstMucTrack : virtual public ContainedObject {
15
16public:
18
19 /// Assignment constructor.
20 // DstMucTrack& operator=(const MucTrack& source);
21
22 // void copy(const MucTrack* orig);
23
24 /// Copy constructor.
25 // DstMucTrack(const MucTrack& source);
26
27 virtual ~DstMucTrack() {}
28
29 virtual const CLID& clID() const { return DstMucTrack::classID(); }
30 static const CLID& classID() { return CLID_DstMucTrack; }
31
32 int trackId() const { return m_trackId; }
33 int id() const { return m_id; }
34 int status() const { return m_status; }
35 int type() const { return m_type; }
36
37 int startPart() const {
38 return m_startPart;
39 } // start position of track locates in which part
40 int endPart() const { return m_endPart; } // end position of track locates in which part
41 int brLastLayer() const { return m_brLastLayer; } // last layer with hits in barrel
42 int ecLastLayer() const { return m_ecLastLayer; } // last layer with hits in end cap
43 int numHits() const { return m_numHits; } // total hits on the track
44 int numLayers() const { return m_numLayers; } // number of layers with hits
45 int maxHitsInLayer() const { return m_maxHitsInLayer; }
46
47 double depth() const { return m_depth; } // depth of the track transport in iron
48 double chi2() const { return m_chi2; }
49 int dof() const { return m_dof; }
50 double rms() const { return m_rms; }
51
52 double xPos() const { return m_xPos; } // position on the start of track in muc (vertex)
53 double yPos() const { return m_yPos; }
54 double zPos() const { return m_zPos; }
55
56 double xPosSigma() const { return m_xPosSigma; }
57 double yPosSigma() const { return m_yPosSigma; }
58 double zPosSigma() const { return m_zPosSigma; }
59
60 double px() const { return m_px; } // momentum on the start of track in muc
61 double py() const { return m_py; }
62 double pz() const { return m_pz; }
63
64 double distance() const { return m_distance; }
65 double deltaPhi() const { return m_deltaPhi; }
66
67 vector<int> vecHits() const { return m_vecHits; }
68
69 // added by LI Chunhua 2013/02/01
70 double kalRechi2() const { return m_kalrechi2; }
71 int kaldof() const { return m_kaldof; }
72 double kaldepth() const { return m_kaldepth; }
73 int kalbrLastLayer() const { return m_kalbrLastLayer; }
74 int kalecLastLayer() const { return m_kalecLastLayer; }
75 //**********************
76 // Set
78 void setId( int id ) { m_id = id; }
79 void setStatus( int st ) { m_status = st; }
80 void setType( int type ) { m_type = type; }
81
82 void setStartPart( int part ) { m_startPart = part; }
83 void setEndPart( int part ) { m_endPart = part; }
84 void setBrLastLayer( int layer ) { m_brLastLayer = layer; }
85 void setEcLastLayer( int layer ) { m_ecLastLayer = layer; }
88 void setMaxHitsInLayer( int maxHits ) { m_maxHitsInLayer = maxHits; }
89
90 void setDepth( double depth ) { m_depth = depth; }
91 void setChi2( double chi2 ) { m_chi2 = chi2; }
92 void setDof( int dof ) { m_dof = dof; }
93 void setRms( double rms ) { m_rms = rms; }
94
95 void setXPos( double x ) { m_xPos = x; }
96 void setYPos( double y ) { m_yPos = y; }
97 void setZPos( double z ) { m_zPos = z; }
98
99 void setXPosSigma( double xsigma ) { m_xPosSigma = xsigma; }
100 void setYPosSigma( double ysigma ) { m_yPosSigma = ysigma; }
101 void setZPosSigma( double zsigma ) { m_zPosSigma = zsigma; }
102
103 void setPx( double px ) { m_px = px; }
104 void setPy( double py ) { m_py = py; }
105 void setPz( double pz ) { m_pz = pz; }
106
107 void setDistance( double dist ) { m_distance = dist; }
108 void setDeltaPhi( double dphi ) { m_deltaPhi = dphi; }
109
110 void setVecHits( vector<int>& vecHits ) { m_vecHits = vecHits; }
111 // added by LI Chunhua
112 void setkalRechi2( double ch ) { m_kalrechi2 = ch; }
113 void setkalDof( int f ) { m_kaldof = f; }
114 void setkalDepth( double de ) { m_kaldepth = de; }
115 void setkalbrLastLayer( int br ) { m_kalbrLastLayer = br; }
116 void setkalecLastLayer( int ec ) { m_kalecLastLayer = ec; }
117 //******************
118
119protected:
120 int m_trackId{ 0 }; // Track ID wensp Add 2005-10-19
121 int m_id{ 0 }; // Muc Identifier
122 int m_status{ 0 }; // Muc Status
123 int m_type{ 0 }; // Method of judge?
124
125 int m_startPart{ 0 }; // In which part does the start position of track locate
126 int m_endPart{ 0 }; // In which part does the end position of track locate
127 int m_brLastLayer{ 0 }; // Last layer with hits in barrel
128 int m_ecLastLayer{ 0 }; // Last layer with hits in endcap
129 int m_numHits{ 0 }; // Number of hits on track
130 int m_numLayers{ 0 }; // Number of layer with hits
131 int m_maxHitsInLayer{ 0 }; // Max number of hits in a layer
132
133 double m_depth{ 0.0 }; // Depth of iron penetrated
134 double m_chi2{ 0.0 }; // Fit parameters
135 int m_dof{ 0 };
136 double m_rms{ 0.0 };
137
138 double m_xPos{ 0.0 }; // x position of muc track vertex
139 double m_yPos{ 0.0 }; // y position of muc track vertex
140 double m_zPos{ 0.0 }; // z position of muc track vertex
141
142 double m_xPosSigma{ 0.0 }; // sigma of x position of muc track vertex in first gap local
143 // coordinate.
144 double m_yPosSigma{ 0.0 }; // sigma of y ...
145 double m_zPosSigma{ 0.0 }; // sigma of z ... ... so it' 0;
146
147 double m_px{ 0.0 }; // px on muc track vertex
148 double m_py{ 0.0 }; // py on muc track vertex
149 double m_pz{ 0.0 }; // pz on muc track vertex
150
151 double m_distance{ 0.0 };
152 double m_deltaPhi{ 0.0 };
153
154 vector<int> m_vecHits; //// hit list of the track
155
156 // added by LI Chunhua
157 double m_kalrechi2{ 0.0 };
158 int m_kaldof{ 0 };
159 double m_kaldepth{ 0.0 };
162 //***************
163};
164
165typedef ObjectVector<DstMucTrack> DstMucTrackCol;
166#endif // NDST_DstMucTrack_H
TFile f("ana_bhabha660a_dqa_mcPat_zy_old.root")
const CLID & CLID_DstMucTrack
ObjectVector< DstMucTrack > DstMucTrackCol
const CLID & CLID_DstMucTrack
virtual ~DstMucTrack()
Assignment constructor.
virtual const CLID & clID() const
void setVecHits(vector< int > &vecHits)