CMS 3D CMS Logo

DeDxHit.h
Go to the documentation of this file.
1 #ifndef TrackDeDxHits_H
2 #define TrackDeDxHits_H
3 
4 #include <cstdint>
5 #include <vector>
6 
7 namespace reco {
11  class DeDxHit {
12  public:
13  DeDxHit() {}
14 
15  DeDxHit(float ch, float mom, float len, uint32_t rawDetId, float err = 0)
17 
19  float charge() const { return m_charge; }
20 
22  float momentum() const { return m_momentum; }
23 
25  float pathLength() const { return m_pathLength; }
26 
28  uint32_t rawDetId() const { return m_rawDetId; }
29 
31  float error() const { return m_error; }
32 
33  bool operator<(const DeDxHit &other) const { return m_charge < other.m_charge; }
34 
35  private:
36  // Those data members should be "compressed" once usage
37  // of ROOT/reflex precision specifier will be available in CMSSW
38  float m_charge;
39  float m_momentum;
40  float m_pathLength;
41  uint32_t m_rawDetId;
42  float m_error;
43  };
44 
45  typedef std::vector<DeDxHit> DeDxHitCollection;
46 
47 } // namespace reco
48 #endif
bool operator<(const DeDxHit &other) const
Definition: DeDxHit.h:33
float m_pathLength
Definition: DeDxHit.h:40
std::vector< DeDxHit > DeDxHitCollection
Definition: DeDxHit.h:45
float charge() const
Return the angle and thick normalized, calibrated energy release.
Definition: DeDxHit.h:19
float m_momentum
Definition: DeDxHit.h:39
float momentum() const
Return the momentum of the trajectory at the interaction point.
Definition: DeDxHit.h:22
float pathLength() const
Return the path length.
Definition: DeDxHit.h:25
uint32_t rawDetId() const
Return the rawDetId.
Definition: DeDxHit.h:28
uint32_t m_rawDetId
Definition: DeDxHit.h:41
float m_error
Definition: DeDxHit.h:42
DeDxHit(float ch, float mom, float len, uint32_t rawDetId, float err=0)
Definition: DeDxHit.h:15
fixed size matrix
float m_charge
Definition: DeDxHit.h:38
float error() const
Return the error of the energy release.
Definition: DeDxHit.h:31