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
8 {
12 class DeDxHit
13 {
14 
15 public:
16  DeDxHit() {}
17 
18  DeDxHit(float ch, float mom, float len, uint32_t rawDetId):
19  m_charge(ch),
20  m_momentum(mom),
21  m_pathLength(len),
22  m_rawDetId(rawDetId){
23  }
24 
26  float charge() const {
27  return m_charge;
28  }
29 
31  float momentum() const {
32  return m_momentum;
33  }
34 
36  float pathLength() const {
37  return m_pathLength;
38  }
39 
41  uint32_t rawDetId() const {
42  return m_rawDetId;
43  }
44 
45  bool operator< (const DeDxHit &other) const {
46  return m_charge < other.m_charge;
47  }
48 
49 private:
50  // Those data members should be "compressed" once usage
51  // of ROOT/reflex precision specifier will be available in CMSSW
52  float m_charge;
53  float m_momentum;
54  float m_pathLength;
55  uint32_t m_rawDetId;
56 };
57 
58 typedef std::vector<DeDxHit> DeDxHitCollection;
59 
60 } // namespace reco
61 #endif
62 
float charge() const
Return the angle and thick normalized, calibrated energy release.
Definition: DeDxHit.h:26
float m_pathLength
Definition: DeDxHit.h:54
std::vector< DeDxHit > DeDxHitCollection
Definition: DeDxHit.h:58
uint32_t rawDetId() const
Return the rawDetId.
Definition: DeDxHit.h:41
float m_momentum
Definition: DeDxHit.h:53
float momentum() const
Return the momentum of the trajectory at the interaction point.
Definition: DeDxHit.h:31
float pathLength() const
Return the path length.
Definition: DeDxHit.h:36
DeDxHit(float ch, float mom, float len, uint32_t rawDetId)
Definition: DeDxHit.h:18
uint32_t m_rawDetId
Definition: DeDxHit.h:55
fixed size matrix
bool operator<(const DeDxHit &other) const
Definition: DeDxHit.h:45
float m_charge
Definition: DeDxHit.h:52