CMS 3D CMS Logo

RPCDigiSimLink.h
Go to the documentation of this file.
1 #ifndef RPCOBJECTS_RPCDIGISIMLINK_H
2 #define RPCOBJECTS_RPCDIGISIMLINK_H
3 
4 #include "boost/cstdint.hpp"
5 #include <map>
9 
11 public:
12  RPCDigiSimLink(std::pair<unsigned int, int> digi,
13  Local3DPoint entryPoint,
14  LocalVector momentumAtEntry,
15  float timeOfFlight,
16  float energyLoss,
17  int particleType,
18  unsigned int detUnitId,
19  unsigned int trackId,
20  EncodedEventId eventId,
21  unsigned short processType) {
22  _entryPoint = entryPoint;
23  _momentumAtEntry = momentumAtEntry;
25  _energyLoss = energyLoss;
27  _detUnitId = detUnitId;
28  _trackId = trackId;
29  _eventId = eventId;
30  _processType = processType;
31  _digi = digi;
32  }
33 
35 
37 
38  unsigned int getStrip() const { return _digi.first; }
39  unsigned int getBx() const { return _digi.second; }
42  float getTimeOfFlight() const { return _timeOfFlight; }
43  float getEnergyLoss() const { return _energyLoss; }
44  int getParticleType() const { return _particleType; }
45  unsigned int getDetUnitId() const { return _detUnitId; }
46  unsigned int getTrackId() const { return _trackId; }
47  EncodedEventId getEventId() const { return _eventId; }
48  unsigned short getProcessType() const { return _processType; }
49 
50  inline bool operator<(const RPCDigiSimLink& other) const { return getStrip() < other.getStrip(); }
51 
52 private:
53  std::pair<unsigned int, int> _digi;
54 
58  float _energyLoss;
60  unsigned int _detUnitId;
61  unsigned int _trackId;
63  unsigned short _processType;
64 };
65 #endif
double timeOfFlight(DetId id, const CaloGeometry *geo, bool debug=false)
Definition: CaloSimInfo.cc:17