BOSS 7.0.8
BESIII Offline Software System
Loading...
Searching...
No Matches
RecMdcKalHelixSeg.h
Go to the documentation of this file.
1/*
2 * @class : RecMdcKalHelixSeg
3 *
4 * @author: wangjk
5 * ********************************************************/
6
7#ifndef RECMDCKALHELIXSEG_H
8#define RECMDCKALHELIXSEG_H
9#include "GaudiKernel/ContainedObject.h"
10#include "GaudiKernel/SmartRef.h"
11#include "GaudiKernel/ObjectVector.h"
13#include "Identifier/MdcID.h"
15#include "CLHEP/Matrix/Vector.h"
16#include "CLHEP/Matrix/SymMatrix.h"
17#include "CLHEP/Vector/ThreeVector.h"
18#include "CLHEP/Geometry/Point3D.h"
19
20#ifndef ENABLE_BACKWARDS_COMPATIBILITY
22#endif
23
24
25using namespace CLHEP;
26
27extern const CLID& CLID_RecMdcKalHelixSeg;
28
29class RecMdcKalTrack;
30
31class RecMdcKalHelixSeg : virtual public ContainedObject {
32
33 public:
34 virtual const CLID& clID() const {
36 }
37
38 static const CLID& classID() {
40 }
41 //constrcctor and destructor
45
46 //extractors
47 int getTrackId(void) const { return m_trackid; }
48 Identifier getMdcId(void) const { return m_mdcid; }
49 int getFlagLR(void) const { return m_flagLR; }
50 double getTdc(void) const { return m_tdc; }
51 double getAdc(void) const { return m_adc; }
52 double getZhit(void) const { return m_zhit; }
53 double getTof(void) const{ return m_tof; }
54 double getDocaIncl(void) const { return m_doca_incl ; }
55 double getDocaExcl(void) const { return m_doca_excl ; }
56 double getDD(void) const { return m_dd; };
57 double getEntra(void) const { return m_entra; }
58 double getDT(void) const { return m_dt; }
59 int getLayerId(void) const {return m_layerId; }
60
61 /// get every component of helix parameter
62 double getDrIncl ( void ) const { return m_helix_incl[0]; }
63 double getFi0Incl ( void ) const { return m_helix_incl[1]; }
64 double getCpaIncl ( void ) const { return m_helix_incl[2]; }
65 double getDzIncl ( void ) const { return m_helix_incl[3]; }
66 double getTanlIncl( void ) const { return m_helix_incl[4]; }
67
68 double getDrExcl ( void ) const { return m_helix_excl[0]; }
69 double getFi0Excl ( void ) const { return m_helix_excl[1]; }
70 double getCpaExcl ( void ) const { return m_helix_excl[2]; }
71 double getDzExcl ( void ) const { return m_helix_excl[3]; }
72 double getTanlExcl( void ) const { return m_helix_excl[4]; }
73
74 HepVector& getHelixIncl( void ) { return m_helix_incl; }
75 HepVector& getHelixExcl( void ) { return m_helix_excl; }
76
77 HepSymMatrix& getErrorIncl( void ) { return m_error_incl; }
78 HepSymMatrix& getErrorExcl( void ) { return m_error_excl; }
79 double getResIncl(void) { return m_res_incl; }
80 double getResExcl(void) { return m_res_excl; }
81
82
83 // modifiers
84 void setTrackId(int trackid) { m_trackid = trackid ;}
85 void setMdcId(Identifier mdcid) { m_mdcid = mdcid;}
86 void setFlagLR(int flagLR) { m_flagLR =flagLR;}
87 void setTdc(double tdc) { m_tdc = tdc; }
88 void setAdc(double adc) { m_adc = adc; }
89 void setZhit(double zhit) { m_zhit = zhit; }
90 void setTof(double tof) { m_tof = tof; }
91 void setDocaIncl(double doca) { m_doca_incl = doca; }
92 void setDocaExcl(double doca) { m_doca_excl = doca; }
93
94 void setDD(double dd) { m_dd = dd; }
95 void setEntra(double entra) { m_entra = entra; }
96 void setDT(double dt) { m_dt = dt; }
97 void setLayerId(int layerId) { m_layerId = layerId;}
98
99 void setDrIncl(double dr) { m_helix_incl[0] = dr; }
100 void setFi0Incl(double fi0) { m_helix_incl[1] = fi0; }
101 void setCpaIncl(double cpa) { m_helix_incl[2] = cpa; }
102 void setDzIncl(double dz) { m_helix_incl[3] = dz; }
103 void setTanlIncl(double tanl) { m_helix_incl[4] = tanl; }
104
105 void setDrExcl(double dr) { m_helix_excl[0] = dr; }
106 void setFi0Excl(double fi0) { m_helix_excl[1] = fi0; }
107 void setCpaExcl(double cpa) { m_helix_excl[2] = cpa; }
108 void setDzExcl(double dz) { m_helix_excl[3] = dz; }
109 void setTanlExcl(double tanl) { m_helix_excl[4] = tanl; }
110
111 void setResIncl(double res) {m_res_incl = res; }
112 void setResExcl(double res) {m_res_excl = res; }
113
114 void setHelixIncl(const HepVector& helix) {
115 m_helix_incl = helix;
116 }
117 void setErrorIncl(const HepSymMatrix& error) {
118 m_error_incl = error;
119 }
120 void setHelixExcl(const HepVector& helix) {
121 m_helix_excl = helix;
122 }
123 void setErrorExcl(const HepSymMatrix& error) {
124 m_error_excl = error;
125 }
126
127 void setHelixIncl(double* helix) {
128 for(int i=0; i<5; i++) {
129 m_helix_incl[i] = helix[i];
130 }
131 }
132 void setErrorIncl(double* error) {
133 int k=0;
134 for(int i=0; i<5 ; i++) {
135 for(int j=0; j<=i; j++,k++) {
136 m_error_incl[i][j] = error[k];
137 m_error_incl[j][i] = error[k];
138 }
139 }
140 }
141
142 void setHelixExcl(double* helix) {
143 for(int i=0; i<5; i++) {
144 m_helix_excl[i] = helix[i];
145 }
146 }
147
148 void setErrorExcl(double* error) {
149 int k=0;
150 for(int i=0; i<5 ; i++) {
151 for(int j=0; j<=i; j++,k++) {
152 m_error_excl[i][j] = error[k];
153 m_error_excl[j][i] = error[k];
154 }
155 }
156 }
157
158
159 private:
160
161 int m_trackid;
162 Identifier m_mdcid;
163 int m_flagLR;
164 double m_tdc;
165 double m_adc;
166 double m_zhit;
167 double m_tof;
168 double m_doca_incl;
169 double m_doca_excl;
170 double m_dd;
171 double m_entra;
172 double m_dt;
173 double m_res_incl;
174 double m_res_excl;
175 HepVector m_helix_incl; // 5 track parameters
176 HepVector m_helix_excl; // 5 track parameters
177
178 HepSymMatrix m_error_incl; // error matrix
179 HepSymMatrix m_error_excl; // error matrix
180
181 int m_layerId;
182
183};
184typedef ObjectVector<RecMdcKalHelixSeg> RecMdcKalHelixSegCol;
185
186
187#endif
188
TGraph2DErrors * dt
Definition: McCor.cxx:45
HepGeom::Point3D< double > HepPoint3D
const CLID & CLID_RecMdcKalHelixSeg
Definition: EventModel.cxx:314
ObjectVector< RecMdcKalHelixSeg > RecMdcKalHelixSegCol
void setTrackId(int trackid)
void setResIncl(double res)
void setDocaExcl(double doca)
HepVector & getHelixExcl(void)
void setHelixIncl(const HepVector &helix)
Identifier getMdcId(void) const
void setLayerId(int layerId)
void setDT(double dt)
int getFlagLR(void) const
void setDrIncl(double dr)
HepVector & getHelixIncl(void)
void setTanlIncl(double tanl)
double getDzIncl(void) const
void setDzIncl(double dz)
void setHelixIncl(double *helix)
int getLayerId(void) const
void setAdc(double adc)
void setEntra(double entra)
int getTrackId(void) const
void setDzExcl(double dz)
void setFi0Excl(double fi0)
void setFi0Incl(double fi0)
double getResIncl(void)
double getTof(void) const
void setFlagLR(int flagLR)
HepSymMatrix & getErrorExcl(void)
double getEntra(void) const
double getResExcl(void)
void setErrorIncl(double *error)
double getDD(void) const
double getDocaIncl(void) const
void setCpaIncl(double cpa)
void setErrorExcl(double *error)
virtual const CLID & clID() const
double getDocaExcl(void) const
void setTdc(double tdc)
void setDD(double dd)
void setResExcl(double res)
void setCpaExcl(double cpa)
double getCpaExcl(void) const
double getDrExcl(void) const
void setDrExcl(double dr)
void setHelixExcl(const HepVector &helix)
void setHelixExcl(double *helix)
double getTdc(void) const
void setZhit(double zhit)
double getFi0Excl(void) const
double getZhit(void) const
double getDT(void) const
HepSymMatrix & getErrorIncl(void)
void setErrorExcl(const HepSymMatrix &error)
double getTanlIncl(void) const
static const CLID & classID()
double getFi0Incl(void) const
void setTanlExcl(double tanl)
void setMdcId(Identifier mdcid)
double getDrIncl(void) const
get every component of helix parameter
void setTof(double tof)
double getTanlExcl(void) const
double getDzExcl(void) const
void setDocaIncl(double doca)
double getAdc(void) const
double getCpaIncl(void) const
void setErrorIncl(const HepSymMatrix &error)