CMS 3D CMS Logo

GEMDigiSimLink.h
Go to the documentation of this file.
1 #ifndef GEMOBJECTS_GEMDIGISIMLINK_H
2 #define GEMOBJECTS_GEMDIGISIMLINK_H
3 
4 #include <map>
8 
10 {
11 public:
12  GEMDigiSimLink(std::pair<unsigned int, int> digi, Local3DPoint entryPoint, LocalVector momentumAtEntry,
13  float timeOfFlight, float energyLoss, int particleType, unsigned int detUnitId, unsigned int trackId,
14  EncodedEventId eventId, unsigned short processType)
15  {
16 
17  _entryPoint = entryPoint;
18  _momentumAtEntry = momentumAtEntry;
20  _energyLoss = energyLoss;
22  _detUnitId = detUnitId;
23  _trackId = trackId;
24  _eventId = eventId;
25  _processType = processType;
26  _digi = digi;
27  }
28 
30 
32 
33  unsigned int getStrip() const {return _digi.first;}
34  unsigned int getBx() const{return _digi.second;}
37  float getTimeOfFlight() const{return _timeOfFlight;}
38  float getEnergyLoss() const{return _energyLoss;}
39  int getParticleType() const{return _particleType;}
40  unsigned int getDetUnitId() const{return _detUnitId;}
41  unsigned int getTrackId() const{return _trackId;}
43  unsigned short getProcessType() const{return _processType;}
44 
45  inline bool operator<(const GEMDigiSimLink& other) const{return getStrip() < other.getStrip();}
46 
47 private:
48  std::pair<unsigned int, int> _digi;
49 
53  float _energyLoss;
55  unsigned int _detUnitId;
56  unsigned int _trackId;
58  unsigned short _processType;
59 
60 };
61 #endif
double timeOfFlight(DetId id, const CaloGeometry *geo, bool debug=false)
Definition: CaloSimInfo.cc:15