CGEM BOSS 6.6.5.h
BESIII Offline Software System
Loading...
Searching...
No Matches
RecCgemKalHelixSeg.h
Go to the documentation of this file.
1/*
2 * @class : RecCgemKalHelixSeg
3 *
4 * @author: wangjk
5 * ********************************************************/
6
7#ifndef RECCGEMKALHELIXSEG_H
8#define RECCGEMKALHELIXSEG_H
9#include "GaudiKernel/ContainedObject.h"
10#include "GaudiKernel/SmartRef.h"
11#include "GaudiKernel/ObjectVector.h"
13#include "Identifier/CgemID.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_RecCgemKalHelixSeg;
28
29class RecCgemKalTrack;
30
31class RecCgemKalHelixSeg : 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 getCgemId(void) const { return m_cgemid; }
49 double getTdc(void) const { return m_tdc; }
50 double getAdc(void) const { return m_adc; }
51 double getZhit(void) const { return m_zhit; }
52 double getTof(void) const{ return m_tof; }
53 double getDocaIncl(void) const { return m_doca_incl ; }
54 double getDocaExcl(void) const { return m_doca_excl ; }
55 double getEntra(void) const { return m_entra; }
56 int getLayerId(void) const {return m_layerId; }
57
58 /// get every component of helix parameter
59 double getDrIncl ( void ) const { return m_helix_incl[0]; }
60 double getFi0Incl ( void ) const { return m_helix_incl[1]; }
61 double getCpaIncl ( void ) const { return m_helix_incl[2]; }
62 double getDzIncl ( void ) const { return m_helix_incl[3]; }
63 double getTanlIncl( void ) const { return m_helix_incl[4]; }
64
65 double getDrExcl ( void ) const { return m_helix_excl[0]; }
66 double getFi0Excl ( void ) const { return m_helix_excl[1]; }
67 double getCpaExcl ( void ) const { return m_helix_excl[2]; }
68 double getDzExcl ( void ) const { return m_helix_excl[3]; }
69 double getTanlExcl( void ) const { return m_helix_excl[4]; }
70
71 HepVector& getHelixIncl( void ) { return m_helix_incl; }
72 HepVector& getHelixExcl( void ) { return m_helix_excl; }
73
74 HepSymMatrix& getErrorIncl( void ) { return m_error_incl; }
75 HepSymMatrix& getErrorExcl( void ) { return m_error_excl; }
76 double getResIncl(void) { return m_res_incl; }
77 double getResExcl(void) { return m_res_excl; }
78
79
80 // modifiers
81 void setTrackId(int trackid) { m_trackid = trackid ;}
82 void setCgemId(Identifier cgemid) { m_cgemid = cgemid;}
83 void setTdc(double tdc) { m_tdc = tdc; }
84 void setAdc(double adc) { m_adc = adc; }
85 void setZhit(double zhit) { m_zhit = zhit; }
86 void setTof(double tof) { m_tof = tof; }
87 void setDocaIncl(double doca) { m_doca_incl = doca; }
88 void setDocaExcl(double doca) { m_doca_excl = doca; }
89
90 void setEntra(double entra) { m_entra = entra; }
91 void setLayerId(int layerId) { m_layerId = layerId;}
92
93 void setDrIncl(double dr) { m_helix_incl[0] = dr; }
94 void setFi0Incl(double fi0) { m_helix_incl[1] = fi0; }
95 void setCpaIncl(double cpa) { m_helix_incl[2] = cpa; }
96 void setDzIncl(double dz) { m_helix_incl[3] = dz; }
97 void setTanlIncl(double tanl) { m_helix_incl[4] = tanl; }
98
99 void setDrExcl(double dr) { m_helix_excl[0] = dr; }
100 void setFi0Excl(double fi0) { m_helix_excl[1] = fi0; }
101 void setCpaExcl(double cpa) { m_helix_excl[2] = cpa; }
102 void setDzExcl(double dz) { m_helix_excl[3] = dz; }
103 void setTanlExcl(double tanl) { m_helix_excl[4] = tanl; }
104
105 void setResIncl(double res) {m_res_incl = res; }
106 void setResExcl(double res) {m_res_excl = res; }
107
108 void setHelixIncl(const HepVector& helix) {
109 m_helix_incl = helix;
110 }
111 void setErrorIncl(const HepSymMatrix& error) {
112 m_error_incl = error;
113 }
114 void setHelixExcl(const HepVector& helix) {
115 m_helix_excl = helix;
116 }
117 void setErrorExcl(const HepSymMatrix& error) {
118 m_error_excl = error;
119 }
120
121 void setHelixIncl(double* helix) {
122 for(int i=0; i<5; i++) {
123 m_helix_incl[i] = helix[i];
124 }
125 }
126 void setErrorIncl(double* error) {
127 int k=0;
128 for(int i=0; i<5 ; i++) {
129 for(int j=0; j<=i; j++,k++) {
130 m_error_incl[i][j] = error[k];
131 m_error_incl[j][i] = error[k];
132 }
133 }
134 }
135
136 void setHelixExcl(double* helix) {
137 for(int i=0; i<5; i++) {
138 m_helix_excl[i] = helix[i];
139 }
140 }
141
142 void setErrorExcl(double* error) {
143 int k=0;
144 for(int i=0; i<5 ; i++) {
145 for(int j=0; j<=i; j++,k++) {
146 m_error_excl[i][j] = error[k];
147 m_error_excl[j][i] = error[k];
148 }
149 }
150 }
151
152
153 private:
154
155 int m_trackid;
156 Identifier m_cgemid;
157 double m_tdc;
158 double m_adc;
159 double m_zhit;
160 double m_tof;
161 double m_doca_incl;
162 double m_doca_excl;
163 double m_entra;
164 double m_res_incl;
165 double m_res_excl;
166 HepVector m_helix_incl; // 5 track parameters
167 HepVector m_helix_excl; // 5 track parameters
168
169 HepSymMatrix m_error_incl; // error matrix
170 HepSymMatrix m_error_excl; // error matrix
171
172 int m_layerId;
173
174};
175typedef ObjectVector<RecCgemKalHelixSeg> RecCgemKalHelixSegCol;
176
177
178#endif
179
HepGeom::Point3D< double > HepPoint3D
ObjectVector< RecCgemKalHelixSeg > RecCgemKalHelixSegCol
const CLID & CLID_RecCgemKalHelixSeg
double getTanlIncl(void) const
void setErrorIncl(const HepSymMatrix &error)
HepVector & getHelixExcl(void)
Identifier getCgemId(void) const
double getFi0Incl(void) const
void setCpaIncl(double cpa)
void setTdc(double tdc)
double getDocaIncl(void) const
void setTanlIncl(double tanl)
void setFi0Incl(double fi0)
static const CLID & classID()
void setErrorIncl(double *error)
double getEntra(void) const
double getDzIncl(void) const
HepVector & getHelixIncl(void)
void setCpaExcl(double cpa)
void setHelixExcl(double *helix)
void setCgemId(Identifier cgemid)
void setDrExcl(double dr)
void setTof(double tof)
void setTrackId(int trackid)
double getDrExcl(void) const
void setDzIncl(double dz)
double getCpaExcl(void) const
double getDrIncl(void) const
get every component of helix parameter
double getTdc(void) const
double getCpaIncl(void) const
void setResIncl(double res)
double getZhit(void) const
double getAdc(void) const
double getDocaExcl(void) const
void setDzExcl(double dz)
void setHelixExcl(const HepVector &helix)
double getDzExcl(void) const
void setErrorExcl(const HepSymMatrix &error)
void setHelixIncl(double *helix)
void setAdc(double adc)
HepSymMatrix & getErrorExcl(void)
void setFi0Excl(double fi0)
void setLayerId(int layerId)
virtual const CLID & clID() const
void setResExcl(double res)
void setErrorExcl(double *error)
HepSymMatrix & getErrorIncl(void)
double getTanlExcl(void) const
void setDocaIncl(double doca)
double getFi0Excl(void) const
int getLayerId(void) const
void setDrIncl(double dr)
void setTanlExcl(double tanl)
int getTrackId(void) const
void setDocaExcl(double doca)
void setZhit(double zhit)
double getTof(void) const
void setEntra(double entra)
void setHelixIncl(const HepVector &helix)