LCIO  "2.7.4"
 All Classes Namespaces Functions Variables Typedefs Friends Pages
TrackerHitZCylinderImpl.h
1 // -*- C++ -*-
2 #ifndef IMPL_TrackerHitZCylinderImpl_H
3 #define IMPL_TrackerHitZCylinderImpl_H 1
4 
5 #include <string>
6 
7 #include "EVENT/TrackerHitZCylinder.h"
8 #include "IMPL/AccessChecked.h"
9 
10 #define TRKHITZCYLNCOVMATRIX 6
11 
12 namespace IMPL {
13 
21 
22  public:
23  // C'tor
25 
27  virtual ~TrackerHitZCylinderImpl() ;
28 
29 
30  virtual int id() const { return simpleUID() ; }
31 
34  virtual int getCellID0() const { return _cellID0; }
35 
40  virtual int getCellID1() const { return _cellID1; }
41 
42 
45  virtual const double* getPosition() const { return _pos ; } ;
46 
49  //virtual const float getR() const { return _r ; } ;
50 
53  virtual const float* getCenter() const { return _center ; } ;
54 
56  virtual float getdRPhi() const { return _drphi ; } ;
57 
59  virtual float getdZ() const { return _dz ; } ;
60 
61 
64  virtual const EVENT::FloatVec & getCovMatrix() const ;
65 
70  virtual float getdEdx() const ;
71 
74  virtual float getEDep() const { return _EDep ; }
75 
78  virtual float getEDepError() const { return _EDepError ; }
79 
82  virtual float getTime() const { return _time ; } ;
83 
88  virtual int getType() const { return _type ; }
89 
90 
93  virtual int getQuality() const { return _quality ; }
94 
98  virtual const EVENT::LCObjectVec & getRawHits() const { return _rawHits ; }
99 
100 
103  virtual EVENT::LCObjectVec & rawHits() { return _rawHits ; }
104 
105 
106  // setters
107 
110  void setCellID0(int id0) ;
111 
116  void setCellID1(int id1) ;
117 
118  void setType(int type) ;
119  void setPosition( const double pos[3]) ;
120  void setCenter( const float c[2] ) { setCenter( c[0] , c[1] ) ; };
121  void setCenter( float xc, float yc);
122  //void setR( float r );
123  void setdRPhi( float drphi );
124  void setdZ( float dz );
125  void setEDep( float e ) ;
126  void setEDepError( float e ) ;
127  void setTime( float t ) ;
128  void setQuality( int quality ) ;
129  void setQualityBit( int bit , bool val=true ) ;
130  //void setCovMatrix( const EVENT::FloatVec& cov );
131  //void setCovMatrix( float cov[TRKHITZCYLNCOVMATRIX] );
132 
133 
134 protected:
135 
136  int _cellID0 ;
137  int _cellID1 ;
138 
139  int _type ;
140  double _pos[3] ;
141  float _center[2] ;
142  //float _r;
143  float _drphi ;
144  float _dz ;
145  float _EDep ;
146  float _EDepError ;
147  float _time ;
148  int _quality ;
149  mutable EVENT::FloatVec _cov ;
150  EVENT::LCObjectVec _rawHits ;
151 
152 
153 }; // class
154 } // namespace IMPL
155 #endif // #ifndef IMPL_TrackerHitZCylinderImpl_H
156 
Implementation of the tracker hit on a cylindrical surface parallel to z.
Definition: TrackerHitZCylinderImpl.h:20
virtual float getEDepError() const
The error measured on EDep [GeV].
Definition: TrackerHitZCylinderImpl.h:78
virtual float getdEdx() const
The dE/dx of the hit in [GeV/mm].
Definition: TrackerHitZCylinderImpl.cc:44
virtual ~TrackerHitZCylinderImpl()
Destructor.
Definition: TrackerHitZCylinderImpl.cc:33
virtual int getCellID1() const
Same name as in CalorimeterHit, even though there are no 'cells' in this case 0 if information is not...
Definition: TrackerHitZCylinderImpl.h:40
void setCellID1(int id1)
Sets the second cell id; Only store if the flag word (bit RTHZBIT_ID1) of the collection is set...
Definition: TrackerHitZCylinderImpl.cc:57
virtual const double * getPosition() const
The hit position in [mm].
Definition: TrackerHitZCylinderImpl.h:45
void setCellID0(int id0)
Sets the first cell id;.
Definition: TrackerHitZCylinderImpl.cc:52
std::vector< LCObject * > LCObjectVec
Vector of (pointers to) LCObjects.
Definition: LCObject.h:17
std::vector< float > FloatVec
Vector of floats.
Definition: LCIOSTLTypes.h:18
virtual float getTime() const
The time of the hit in [ns].
Definition: TrackerHitZCylinderImpl.h:82
virtual float getdZ() const
Measurement error along z.
Definition: TrackerHitZCylinderImpl.h:59
virtual float getEDep() const
The deposited energy of the hit [GeV].
Definition: TrackerHitZCylinderImpl.h:74
virtual float getdRPhi() const
Measurement error along RPhi.
Definition: TrackerHitZCylinderImpl.h:56
virtual int getType() const
Type of hit.
Definition: TrackerHitZCylinderImpl.h:88
A tracker hit on a cylindrical surface that runs parallel to the z-axis - the hit is stored as: x...
Definition: TrackerHitZCylinder.h:28
virtual EVENT::LCObjectVec & rawHits()
Use to manipulate the raw hits.
Definition: TrackerHitZCylinderImpl.h:103
virtual const EVENT::FloatVec & getCovMatrix() const
Covariance of the position (x,y,z)
Definition: TrackerHitZCylinderImpl.cc:37
Controls access to objects.
Definition: AccessChecked.h:17
virtual const float * getCenter() const
Radius of cylinder.
Definition: TrackerHitZCylinderImpl.h:53
virtual int getQuality() const
The quality bit flag of the hit.
Definition: TrackerHitZCylinderImpl.h:93
virtual const EVENT::LCObjectVec & getRawHits() const
The raw data hits.
Definition: TrackerHitZCylinderImpl.h:98
virtual int id() const
Returns an object id for internal (debugging) use in LCIO.
Definition: TrackerHitZCylinderImpl.h:30
virtual int getCellID0() const
Same name as in CalorimeterHit, even though there are no 'cells' in this case.
Definition: TrackerHitZCylinderImpl.h:34