LCIO  02.17
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
TrackerPulseImpl.h
Go to the documentation of this file.
1 #ifndef IMPL_TrackerPulseImpl_H
2 #define IMPL_TrackerPulseImpl_H 1
3 
4 #include "EVENT/TrackerPulse.h"
5 #include "AccessChecked.h"
6 
7 #define TRKPULSENCOVMATRIX 3
8 
9 namespace IMPL {
10 
18 
19  public:
20 
24 
26  TrackerPulseImpl(const TrackerPulseImpl&) = default ;
27 
29  TrackerPulseImpl& operator=(const TrackerPulseImpl&) = default ;
30 
32  virtual ~TrackerPulseImpl() ;
33 
34  virtual int id() const { return simpleUID() ; }
35 
36 
39  virtual int getCellID0() const { return _cellID0 ; }
40 
44  virtual int getCellID1() const { return _cellID1 ; }
45 
48  virtual float getTime() const { return _time ; }
49 
50  // The time error
51  //virtual float getTimeError() const { return _timeError ; }
52 
55  virtual float getCharge() const { return _charge ; }
56 
57  //The charge error
58  //virtual float getChargeError() const { return _chargeError ; }
59 
64  virtual const EVENT::FloatVec & getCovMatrix() const { return _cov ; }
65 
66 
69  virtual int getQuality() const { return _quality ; }
70 
75  virtual EVENT::TrackerData * getTrackerData() const { return _corrData ; }
76 
77 
78  // setter methods
79  void setCellID0( int cellID0 ) ;
80  void setCellID1( int cellID1 ) ;
81  void setTime( float time ) ;
82  //void setTimeError( float timeError ) ;
83  void setCharge( float charge ) ;
84  //void setChargeError( float chargeError ) ;
85  //void setCovMatrix( const float cov[TRKPULSENCOVMATRIX] ) ;
86  void setCovMatrix( const float* cov ) ;
87  void setCovMatrix( const EVENT::FloatVec & ) ;
88  void setQuality( int quality ) ;
89  void setQualityBit( int bit , bool val=true ) ;
90  void setTrackerData( EVENT::TrackerData * corrData ) ;
91 
92 protected:
93 
94  int _cellID0 ;
95  int _cellID1 ;
96  float _time ;
97  float _charge ;
98  int _quality ;
101 
102  }; // class
103 } // namespace IMPL
104 #endif /* ifndef IMPL_TrackerPulseImpl_H */
virtual ~TrackerPulseImpl()
Destructor.
virtual int getCellID0() const
Returns the first detector specific (geometrical) cell id.
EVENT::TrackerData * _corrData
void setQuality(int quality)
virtual float getTime() const
The time of the pulse.
TrackerPulseImpl()
Default Constructor - initializes all data to 0's.
void setCellID1(int cellID1)
virtual const EVENT::FloatVec & getCovMatrix() const
Covariance matrix of the charge (c) and time (t) measurements.
void setTrackerData(EVENT::TrackerData *corrData)
TrackerData contains the corrected (calibrated) raw tracker data.
Definition: TrackerData.h:23
void setCharge(float charge)
Tracker pulses as computed from TrackerData objects or as directly measured by a specific subdetector...
Definition: TrackerPulse.h:26
void setCovMatrix(const float *cov)
virtual int id() const
Returns an object id for internal (debugging) use in LCIO.
Default implementation of TrackerPulse.
virtual EVENT::TrackerData * getTrackerData() const
Optionally the TrackerData that has been uesed to create the pulse can be stored with the pulse - NUL...
virtual int getCellID1() const
Returns the second detector specific (geometrical) cell id.
virtual int simpleUID() const
Definition: AccessChecked.h:26
virtual int getQuality() const
The quality bit flag of the pulse - use the defined constants for referring to the bits...
TrackerPulseImpl & operator=(const TrackerPulseImpl &)=default
default assignment operator - use with care
void setQualityBit(int bit, bool val=true)
void setCellID0(int cellID0)
Controls access to objects.
Definition: AccessChecked.h:18
virtual float getCharge() const
The integrated charge of the pulse // FIXME: unit ?.
void setTime(float time)