ATLAS Offline Software
FPGATrackSimHit.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 
3 #ifndef TRIGFPGATrackSimOBJECTS_FPGATrackSimHIT_H
4 #define TRIGFPGATrackSimOBJECTS_FPGATrackSimHIT_H
5 
25 #include <vector>
26 #include <ostream>
27 #include <memory>
28 
31 
32 #include <Rtypes.h>
33 #include "TMath.h"
34 
36 
37  // Some types are inclusive of others. For example, clustered implies mapped.
39 
41 {
42 public:
43 
45  // Constructors
46 
47  FPGATrackSimHit() = default;
48  virtual ~FPGATrackSimHit() = default;
49 
51  // Getters/Setters
52 
53  // --- Hit Type ---
55  void setDetType(SiliconTech detType) { m_detType = detType; }
56  void setDetectorZone(DetectorZone detZone) { m_detectorZone = detZone; }
57  HitType getHitType() const { return m_hitType; }
58  SiliconTech getDetType() const { return m_detType; }
60 
61  bool isMapped() const;
62  bool isClustered() const;
63  bool isReal() const; // ie not wildcard or guessed
64  bool isPixel() const { return m_detType == SiliconTech::pixel; }
65  bool isStrip() const { return m_detType == SiliconTech::strip; }
66  bool isBarrel() const { return m_detectorZone == DetectorZone::barrel; }
67  unsigned getDim() const { return isPixel() ? 2 : 1; } // TODO all calls of this should be replaced with a call to plane map
68  int getRoadID() const { return m_roadID; }
69 
70  // --- Unmapped Location ---
71  void setIdentifier(unsigned int v) { m_identifier = v; } // 32 bit (short) module identifier
72  void setIdentifierHash(unsigned v) { m_identifierHash = v; }
73  void setLayerDisk(unsigned v) { m_layer_disk = v; } // ITk layer number
74  void setSide(unsigned v) { m_side = v; }
75  void setPhysLayer(unsigned v); // Sets using the FPGATrackSim-defined physical layer index (see FPGATrackSimPlaneMap.h)
76  void setEtaModule(int v) { m_etaModule = v; }
77  void setPhiModule(unsigned v) { m_phiModule = v; }
78  void setEtaWidth(unsigned v) { m_etaWidth = v; }
79  void setPhiWidth(unsigned v) { m_phiWidth = v; }
80  unsigned int getIdentifier() const { return m_identifier; } // 32 bit (short) module identifier
81  unsigned getIdentifierHash() const { return m_identifierHash; } // TODO note this might break things in the same way as getSide() a few lines below. If so, recomment.
82  unsigned getLayerDisk() const { return m_layer_disk; } // ITk layer number
83  unsigned getSide() const { return m_side; } // strip side TODO note this has been uncommented on 4/20/21. If wrappers suddenly break, recomment this. Same for getIdentifierHash above.
84  unsigned getPhysLayer() const; // Returns the FPGATrackSim-defined physical layer index (see FPGATrackSimPlaneMap.h)
85  unsigned getEtaWidth() const { return m_etaWidth; }
86  unsigned getPhiWidth() const { return m_phiWidth; }
87  int getEtaModule() const { return m_etaModule; }
88  unsigned getPhiModule() const { return m_phiModule; }
89 
90  // --- Mapped Location ---
91  // NB: isMapped() should return true to access these members
92  void setLayer(unsigned v) { m_layer = v; } // This is the logical layer
93  void setSection(unsigned v) { m_section = v; }
94  unsigned getLayer() const;
95  unsigned getSection() const;
96  void setRoadID(int roadID) { m_roadID = roadID; }
97 
98  // --- Local Coordinates ---
99  // The local coordinate is stored as an unsigned int, as in the hardware.
100  // To get the actual coordinate in units of sensor channels, use the float
101  // getCoord functions instead.
102  void setPhiIndex(unsigned v) { m_phiIndex = v; }
103  void setEtaIndex(unsigned v) { m_etaIndex = v; }
104  void setPhiCoord(float v) { m_phiIndex = v; }
105  void setEtaCoord(float v) { m_etaIndex = v; }
106  unsigned getPhiIndex() const { return m_phiIndex; }
107  unsigned getEtaIndex() const { return m_etaIndex; }
108  float getPhiCoord() const { return m_phiIndex; }
109  float getEtaCoord() const { return m_etaIndex; }
110 
111  float getPhiWindow() const { return m_phiWindow; }
112 
113  // Converts the hit into a spacepoint. Keeps copies of the local information.
114  void makeSpacepoint(float x, float y, float z, float window, FPGATrackSimHit& other, FPGATrackSimMultiTruth& new_truth);
115 
116  // Retrieves a (copy of) the original hit with the original local coordinates used to make a SP.
117  // If not a SP, returns a copy of this hit.
118  const FPGATrackSimHit getOriginalHit() const;
119 
120  // These return coordinates for the inner hit in the pair, if a SP
121  int getPairedEtaModule() const { return m_pairedEtaModule; }
122  unsigned getPairedPhiModule() const { return m_pairedPhiModule; }
123  unsigned getPairedSection() const { return m_pairedSection; }
124  unsigned getPairedLayer() const { return m_pairedLayer; }
125  unsigned getPairedPhysLayer() const { return m_pairedPhysLayer; }
128 
129  // These setters are used by FPGATrackSimPlaneMap to map hits that are SPs.
130  void setPairedLayer(unsigned v) { m_pairedLayer = v; }
131  void setPairedSection(unsigned v) { m_pairedSection = v; }
132 
133  // --- Global Coordinates ---
134  void setX(float v) { m_originalX = m_x; m_x = v; }
135  void setY(float v) { m_originalY = m_y; m_y = v; }
136  void setZ(float v) { m_originalZ = m_z; m_z = v; }
137  float getX() const { return m_x; }
138  float getY() const { return m_y; }
139  float getZ() const { return m_z; }
140  float getR() const { return TMath::Sqrt(m_x * m_x + m_y * m_y); } // This is cylindrical radius
141  float getGPhi() const { return TMath::ATan2(m_y, m_x); }
142  float getGCotTheta() const { return m_z / getR(); } // cot(theta) = z/r
143 
144  // --- Truth and Other ---
145  void setToT(unsigned v) { m_ToT = v; }
148  void setBarcodePt(float v) { m_barcode_pt = v; }
149  void setEventIndex(long v) { m_eventindex = v; }
150  void setParentageMask(unsigned long v) { m_parentage_mask = v; }
152  unsigned getToT() const { return m_ToT ;}
155  long getEventIndex() const { return m_eventindex; }
156  float getBarcodePt() const { return m_barcode_pt; }
157  unsigned long getParentageMask() const { return m_parentage_mask; }
158  const FPGATrackSimMultiTruth& getTruth() const { return m_truth; }
159 
160 
162  // Add information for creating the bytestream TV for ITk pixel and strip
163  // The current athena EDM is using ID bytestream encoders and these happens
164  // to have issues and we need to work around them to make TV
165  // Hence these special function - Please talk to Haider [sabidi@cern.ch]
166  // If these need to functions are being used anywhere outside bytestream encoders
167 
168  bool isValidForITkHit() const {return m_isValidForITK;}
172 
177 
179  // Other Interface
180 
181  friend std::ostream& operator<<(std::ostream&, const FPGATrackSimHit&);
182 
183  //remap interface
184  bool isRemapped() const;
185  void setRemap();
186 
187 protected:
188 
189  // --- Hit Type ---
191  DetectorZone m_detectorZone = DetectorZone::undefined; // barrel / posEC / negEC (0,1,2)
193 
194  // --- Unmapped Location ---
195  unsigned int m_identifier = 0; // Global module ID, from offline (32 bit variant)
196  unsigned m_identifierHash = 0; // Global module ID hash, from ITk
197  unsigned m_layer_disk = 0; // ITk layer number
198  unsigned m_side = 0; // Side of the strip module
199  int m_etaModule = 0; // eta index of the module that the hit is located on
200  unsigned m_phiModule = 0; // phi index of the module that the hit is located on
201  unsigned m_etaWidth = 0; // clustering width along eta
202  unsigned m_phiWidth = 0; // clustering width in phi direction
203 
204  // --- Mapped Location ---
205  // isMapped() should return true to access these members
206  int m_layer = -1; // Logical layer this hit is on
207  int m_section = -1; // Index of detector element in the logical layer (see FPGATrackSimPlaneMap.h)
208 
209  // --- Map Tag
210  bool m_isRemapped = false;
211  // --- Local Coordinates ---
212  int m_phiIndex = -1; // phi index for pixel, strip for strip
213  int m_etaIndex = -1; // eta index for pixel, row for strip
214 
215  // --- Global Coordinates ---
216  float m_x = 0; // Hit position in global coordinates
217  float m_y = 0;
218  float m_z = 0;
219 
220  // Original X/Y/Z coordinates, if this is a spacepoint
221  float m_originalX = 0;
222  float m_originalY = 0;
223  float m_originalZ = 0;
224 
225  // Phi window used in spacepoint calculation
226  float m_phiWindow = 0;
227 
228  // These are the coordinates of the inner layer in a SP
229  unsigned m_pairedPhiModule = -1;
231 
232  // These are the unmapped / physical detector coordinates of the SP inner layer.
233  DetectorZone m_pairedDetZone = DetectorZone::undefined; // barrel / posEC / negEC (0,1,2)
235  unsigned m_pairedPhysLayer = 0;
236 
237  // These are the mapped versions of the inner layer in a SP.
238  unsigned m_pairedSection = 0;
239  unsigned m_pairedLayer = 0;
240 
241  // --- Truth and Other ---
242  unsigned m_hw_word = 0; // store Strip and Pixel cluster positions as integers using the same FPGATrackSim_IM HW definition
243  unsigned m_ToT = 0; // time over Threshold
244  long m_eventindex = 0; // athena event index assigned to this channel
245  HepMcParticleLink::barcode_type m_barcode = 0; // geant particle barcode assigned to this channel
247  float m_barcode_pt = 0; // maximum 'pt' for any 'good' geant particle contributing to the channel.
248  // corresponds to the particle with m_barcode
249  unsigned long m_parentage_mask = 0; // ancestor information of this channel
250 
252  // geant truth data (clusters only). filled during clustering using the m_barcode and
253  // m_barcode_frac data for each raw hit in the cluster.
254 
255 
256  // For ITk EDM encoding
257 
258  bool m_isValidForITK = false; // Should this hit be used for ITk EDM testing
259  int m_stripRowinITKEDM = -1; // Strip hit row ID in ITk EDM format
260  int m_stripChipinITKEDM = -1; // Strip chip ID in ITk EDM format
261  int m_stripHitMapinITKEDM = -1; // Strip hit map in ITk EDM format
262 
263  int m_roadID = 0;
264 
266 };
267 
268 // Container of <FPGATrackSimHit const *>
269 template <class Container>
270 std::vector<std::vector<std::shared_ptr<const FPGATrackSimHit>>> sortByLayer(Container const& hits)
271 {
272  std::vector<std::vector<std::shared_ptr<const FPGATrackSimHit>>> out;
273  for (auto const &hit : hits)
274  {
275  size_t layer = hit->getLayer();
276  if (layer >= out.size()) out.resize(layer + 1);
277  out[layer].push_back(hit);
278  }
279  return out;
280 }
281 
282 
283 std::ostream& operator<<(std::ostream& os, HitType t);
284 std::string to_string(HitType t);
285 
286 #endif // FPGATrackSimHIT_H
287 
FPGATrackSimHit::m_detType
SiliconTech m_detType
Definition: FPGATrackSimHit.h:192
FPGATrackSimHit::getSection
unsigned getSection() const
Definition: FPGATrackSimHit.cxx:83
FPGATrackSimHit::getEventIndex
long getEventIndex() const
Definition: FPGATrackSimHit.h:155
FPGATrackSimHit::getPhiModule
unsigned getPhiModule() const
Definition: FPGATrackSimHit.h:88
FPGATrackSimHit::getSide
unsigned getSide() const
Definition: FPGATrackSimHit.h:83
FPGATrackSimHit::m_identifier
unsigned int m_identifier
Definition: FPGATrackSimHit.h:195
FPGATrackSimHit::setSection
void setSection(unsigned v)
Definition: FPGATrackSimHit.h:93
FPGATrackSimHit::m_barcode
HepMcParticleLink::barcode_type m_barcode
Definition: FPGATrackSimHit.h:245
TRTCalib_Extractor.hits
hits
Definition: TRTCalib_Extractor.py:35
SiliconTech::strip
@ strip
FPGATrackSimHit::isStrip
bool isStrip() const
Definition: FPGATrackSimHit.h:65
FPGATrackSimHit::getPhysLayer
unsigned getPhysLayer() const
Definition: FPGATrackSimHit.cxx:69
FPGATrackSimHit::getToT
unsigned getToT() const
Definition: FPGATrackSimHit.h:152
HitType::extrapolated
@ extrapolated
FPGATrackSimHit::setStripRowIDForITk
void setStripRowIDForITk(int v)
Definition: FPGATrackSimHit.h:174
FPGATrackSimHit::isClustered
bool isClustered() const
Definition: FPGATrackSimHit.cxx:28
FPGATrackSimHit::m_stripHitMapinITKEDM
int m_stripHitMapinITKEDM
Definition: FPGATrackSimHit.h:261
FPGATrackSimHit::setEtaIndex
void setEtaIndex(unsigned v)
Definition: FPGATrackSimHit.h:103
FPGATrackSimHit::setisValidForITkHit
void setisValidForITkHit(bool v)
Definition: FPGATrackSimHit.h:173
FPGATrackSimHit::setPhiCoord
void setPhiCoord(float v)
Definition: FPGATrackSimHit.h:104
FPGATrackSimHit::setIdentifierHash
void setIdentifierHash(unsigned v)
Definition: FPGATrackSimHit.h:72
FPGATrackSimHit::getPairedSection
unsigned getPairedSection() const
Definition: FPGATrackSimHit.h:123
FPGATrackSimHit::m_originalY
float m_originalY
Definition: FPGATrackSimHit.h:222
FPGATrackSimHit::getX
float getX() const
Definition: FPGATrackSimHit.h:137
to_string
std::string to_string(HitType t)
Definition: FPGATrackSimHit.cxx:158
FPGATrackSimHit::getBarcodePt
float getBarcodePt() const
Definition: FPGATrackSimHit.h:156
FPGATrackSimHit::isReal
bool isReal() const
Definition: FPGATrackSimHit.cxx:40
operator<<
std::ostream & operator<<(std::ostream &os, HitType t)
Definition: FPGATrackSimHit.cxx:174
FPGATrackSimHit::getPairedDetType
SiliconTech getPairedDetType() const
Definition: FPGATrackSimHit.h:127
FPGATrackSimHit::m_eventindex
long m_eventindex
Definition: FPGATrackSimHit.h:244
FPGATrackSimHit::getLayer
unsigned getLayer() const
Definition: FPGATrackSimHit.cxx:77
FPGATrackSimHit::isValidForITkHit
bool isValidForITkHit() const
Definition: FPGATrackSimHit.h:168
FPGATrackSimHit::m_stripChipinITKEDM
int m_stripChipinITKEDM
Definition: FPGATrackSimHit.h:260
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
FPGATrackSimHit::getPairedLayer
unsigned getPairedLayer() const
Definition: FPGATrackSimHit.h:124
FPGATrackSimHit::m_pairedEtaModule
int m_pairedEtaModule
Definition: FPGATrackSimHit.h:230
FPGATrackSimHit::setEtaWidth
void setEtaWidth(unsigned v)
Definition: FPGATrackSimHit.h:78
FPGATrackSimHit::setSide
void setSide(unsigned v)
Definition: FPGATrackSimHit.h:74
FPGATrackSimHit::makeSpacepoint
void makeSpacepoint(float x, float y, float z, float window, FPGATrackSimHit &other, FPGATrackSimMultiTruth &new_truth)
Definition: FPGATrackSimHit.cxx:89
HitType::spacepoint
@ spacepoint
FPGATrackSimMultiTruth.h
FPGATrackSimHit::getEtaModule
int getEtaModule() const
Definition: FPGATrackSimHit.h:87
FPGATrackSimHit::getDim
unsigned getDim() const
Definition: FPGATrackSimHit.h:67
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
FPGATrackSimHit::setY
void setY(float v)
Definition: FPGATrackSimHit.h:135
FPGATrackSimHit::m_identifierHash
unsigned m_identifierHash
Definition: FPGATrackSimHit.h:196
FPGATrackSimHit::getLayerDisk
unsigned getLayerDisk() const
Definition: FPGATrackSimHit.h:82
FPGATrackSimHit::~FPGATrackSimHit
virtual ~FPGATrackSimHit()=default
FPGATrackSimHit::setDetectorZone
void setDetectorZone(DetectorZone detZone)
Definition: FPGATrackSimHit.h:56
FPGATrackSimHit::m_hitType
HitType m_hitType
Definition: FPGATrackSimHit.h:190
x
#define x
HitType::guessed
@ guessed
HitType::undefined
@ undefined
FPGATrackSimHit::m_pairedDetZone
DetectorZone m_pairedDetZone
Definition: FPGATrackSimHit.h:233
FPGATrackSimHit::m_y
float m_y
Definition: FPGATrackSimHit.h:217
FPGATrackSimHit
Definition: FPGATrackSimHit.h:41
FPGATrackSimHit::getGPhi
float getGPhi() const
Definition: FPGATrackSimHit.h:141
Container
storage of the time histories of all the cells
FPGATrackSimHit::m_etaWidth
unsigned m_etaWidth
Definition: FPGATrackSimHit.h:201
HitType::wildcard
@ wildcard
FPGATrackSimHit::getTruth
const FPGATrackSimMultiTruth & getTruth() const
Definition: FPGATrackSimHit.h:158
FPGATrackSimHit::setUniqueID
void setUniqueID(const HepMcParticleLink::barcode_type &v)
Definition: FPGATrackSimHit.h:147
FPGATrackSimHit::getIdentifier
unsigned int getIdentifier() const
Definition: FPGATrackSimHit.h:80
FPGATrackSimHit::getPhiCoord
float getPhiCoord() const
Definition: FPGATrackSimHit.h:108
FPGATrackSimHit::isRemapped
bool isRemapped() const
Definition: FPGATrackSimHit.cxx:20
FPGATrackSimHit::ClassDefNV
ClassDefNV(FPGATrackSimHit, 9)
FPGATrackSimHit::getStripChipIDForITk
int getStripChipIDForITk() const
Definition: FPGATrackSimHit.h:170
FPGATrackSimHit::m_pairedPhysLayer
unsigned m_pairedPhysLayer
Definition: FPGATrackSimHit.h:235
FPGATrackSimHit::getPairedEtaModule
int getPairedEtaModule() const
Definition: FPGATrackSimHit.h:121
FPGATrackSimHit::setDetType
void setDetType(SiliconTech detType)
Definition: FPGATrackSimHit.h:55
FPGATrackSimHit::setX
void setX(float v)
Definition: FPGATrackSimHit.h:134
FPGATrackSimHit::m_hw_word
unsigned m_hw_word
Definition: FPGATrackSimHit.h:242
FPGATrackSimHit::setToT
void setToT(unsigned v)
Definition: FPGATrackSimHit.h:145
FPGATrackSimHit::m_uniqueID
HepMcParticleLink::barcode_type m_uniqueID
Definition: FPGATrackSimHit.h:246
FPGATrackSimHit::setPhiIndex
void setPhiIndex(unsigned v)
Definition: FPGATrackSimHit.h:102
FPGATrackSimHit::getPhiIndex
unsigned getPhiIndex() const
Definition: FPGATrackSimHit.h:106
SiliconTech
SiliconTech
Definition: FPGATrackSimTypes.h:25
FPGATrackSimHit::m_isValidForITK
bool m_isValidForITK
Definition: FPGATrackSimHit.h:258
z
#define z
FPGATrackSimHit::m_etaIndex
int m_etaIndex
Definition: FPGATrackSimHit.h:213
FPGATrackSimHit::getOriginalHit
const FPGATrackSimHit getOriginalHit() const
Definition: FPGATrackSimHit.cxx:123
TRT::Hit::layer
@ layer
Definition: HitInfo.h:79
FPGATrackSimHit::setStripHitMapForITk
void setStripHitMapForITk(int v)
Definition: FPGATrackSimHit.h:176
FPGATrackSimHit::setEtaModule
void setEtaModule(int v)
Definition: FPGATrackSimHit.h:76
FPGATrackSimHit::setEtaCoord
void setEtaCoord(float v)
Definition: FPGATrackSimHit.h:105
FPGATrackSimHit::m_z
float m_z
Definition: FPGATrackSimHit.h:218
FPGATrackSimHit::m_phiModule
unsigned m_phiModule
Definition: FPGATrackSimHit.h:200
FPGATrackSimHit::getPairedPhiModule
unsigned getPairedPhiModule() const
Definition: FPGATrackSimHit.h:122
FPGATrackSimHit::getParentageMask
unsigned long getParentageMask() const
Definition: FPGATrackSimHit.h:157
FPGATrackSimHit::m_barcode_pt
float m_barcode_pt
Definition: FPGATrackSimHit.h:247
FPGATrackSimHit::m_ToT
unsigned m_ToT
Definition: FPGATrackSimHit.h:243
FPGATrackSimHit::getStripHitMapForITk
int getStripHitMapForITk() const
Definition: FPGATrackSimHit.h:171
FPGATrackSimHit::getY
float getY() const
Definition: FPGATrackSimHit.h:138
FPGATrackSimHit::m_pairedLayer
unsigned m_pairedLayer
Definition: FPGATrackSimHit.h:239
FPGATrackSimHit::setBarcode
void setBarcode(const HepMcParticleLink::barcode_type &v)
Definition: FPGATrackSimHit.h:146
FPGATrackSimHit::setRoadID
void setRoadID(int roadID)
Definition: FPGATrackSimHit.h:96
FPGATrackSimHit::getPairedPhysLayer
unsigned getPairedPhysLayer() const
Definition: FPGATrackSimHit.h:125
FPGATrackSimHit::getEtaIndex
unsigned getEtaIndex() const
Definition: FPGATrackSimHit.h:107
FPGATrackSimHit::m_originalX
float m_originalX
Definition: FPGATrackSimHit.h:221
FPGATrackSimHit::setPhysLayer
void setPhysLayer(unsigned v)
Definition: FPGATrackSimHit.cxx:55
FPGATrackSimHit::setPhiModule
void setPhiModule(unsigned v)
Definition: FPGATrackSimHit.h:77
FPGATrackSimHit::getIdentifierHash
unsigned getIdentifierHash() const
Definition: FPGATrackSimHit.h:81
FPGATrackSimHit::isPixel
bool isPixel() const
Definition: FPGATrackSimHit.h:64
HitType
HitType
Definition: FPGATrackSimHit.h:38
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
FPGATrackSimHit::FPGATrackSimHit
FPGATrackSimHit()=default
FPGATrackSimHit::setRemap
void setRemap()
Definition: FPGATrackSimHit.cxx:24
FPGATrackSimHit::getZ
float getZ() const
Definition: FPGATrackSimHit.h:139
FPGATrackSimHit::m_layer
int m_layer
Definition: FPGATrackSimHit.h:206
FPGATrackSimHit::setPairedSection
void setPairedSection(unsigned v)
Definition: FPGATrackSimHit.h:131
FPGATrackSimHit::getDetectorZone
DetectorZone getDetectorZone() const
Definition: FPGATrackSimHit.h:59
FPGATrackSimHit::setLayerDisk
void setLayerDisk(unsigned v)
Definition: FPGATrackSimHit.h:73
FPGATrackSimHit::m_phiWidth
unsigned m_phiWidth
Definition: FPGATrackSimHit.h:202
FPGATrackSimHit::m_roadID
int m_roadID
Definition: FPGATrackSimHit.h:263
FPGATrackSimMultiTruth
Definition: FPGATrackSimMultiTruth.h:46
FPGATrackSimHit::setPairedLayer
void setPairedLayer(unsigned v)
Definition: FPGATrackSimHit.h:130
FPGATrackSimHit::m_truth
FPGATrackSimMultiTruth m_truth
Definition: FPGATrackSimHit.h:251
FPGATrackSimHit::m_pairedSection
unsigned m_pairedSection
Definition: FPGATrackSimHit.h:238
FPGATrackSimHit::getUniqueID
HepMcParticleLink::barcode_type getUniqueID() const
Definition: FPGATrackSimHit.h:154
HitType::clustered
@ clustered
FPGATrackSimHit::setPhiWidth
void setPhiWidth(unsigned v)
Definition: FPGATrackSimHit.h:79
FPGATrackSimHit::getRoadID
int getRoadID() const
Definition: FPGATrackSimHit.h:68
FPGATrackSimHit::setEventIndex
void setEventIndex(long v)
Definition: FPGATrackSimHit.h:149
FPGATrackSimHit::getEtaCoord
float getEtaCoord() const
Definition: FPGATrackSimHit.h:109
FPGATrackSimHit::setZ
void setZ(float v)
Definition: FPGATrackSimHit.h:136
FPGATrackSimHit::getPairedDetZone
DetectorZone getPairedDetZone() const
Definition: FPGATrackSimHit.h:126
HitType::mapped
@ mapped
python.PyAthena.v
v
Definition: PyAthena.py:154
FPGATrackSimHit::isMapped
bool isMapped() const
Definition: FPGATrackSimHit.cxx:13
FPGATrackSimHit::getR
float getR() const
Definition: FPGATrackSimHit.h:140
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
FPGATrackSimHit::setLayer
void setLayer(unsigned v)
Definition: FPGATrackSimHit.h:92
DetectorZone
DetectorZone
Definition: FPGATrackSimTypes.h:28
y
#define y
FPGATrackSimHit::m_originalZ
float m_originalZ
Definition: FPGATrackSimHit.h:223
FPGATrackSimHit::m_detectorZone
DetectorZone m_detectorZone
Definition: FPGATrackSimHit.h:191
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
FPGATrackSimHit::m_layer_disk
unsigned m_layer_disk
Definition: FPGATrackSimHit.h:197
FPGATrackSimHit::m_pairedPhiModule
unsigned m_pairedPhiModule
Definition: FPGATrackSimHit.h:229
FPGATrackSimHit::getDetType
SiliconTech getDetType() const
Definition: FPGATrackSimHit.h:58
DetectorZone::barrel
@ barrel
FPGATrackSimHit::m_phiWindow
float m_phiWindow
Definition: FPGATrackSimHit.h:226
FPGATrackSimHit::m_pairedDetType
SiliconTech m_pairedDetType
Definition: FPGATrackSimHit.h:234
FPGATrackSimHit::getPhiWindow
float getPhiWindow() const
Definition: FPGATrackSimHit.h:111
FPGATrackSimHit::getEtaWidth
unsigned getEtaWidth() const
Definition: FPGATrackSimHit.h:85
FPGATrackSimHit::m_isRemapped
bool m_isRemapped
Definition: FPGATrackSimHit.h:210
FPGATrackSimHit::m_x
float m_x
Definition: FPGATrackSimHit.h:216
FPGATrackSimHit::m_stripRowinITKEDM
int m_stripRowinITKEDM
Definition: FPGATrackSimHit.h:259
FPGATrackSimHit::setStripChipIDForITk
void setStripChipIDForITk(int v)
Definition: FPGATrackSimHit.h:175
FPGATrackSimHit::m_phiIndex
int m_phiIndex
Definition: FPGATrackSimHit.h:212
FPGATrackSimHit::m_side
unsigned m_side
Definition: FPGATrackSimHit.h:198
FPGATrackSimHit::setIdentifier
void setIdentifier(unsigned int v)
Definition: FPGATrackSimHit.h:71
FPGATrackSimHit::setTruth
void setTruth(const FPGATrackSimMultiTruth &v)
Definition: FPGATrackSimHit.h:151
FPGATrackSimHit::setParentageMask
void setParentageMask(unsigned long v)
Definition: FPGATrackSimHit.h:150
FPGATrackSimHit::m_section
int m_section
Definition: FPGATrackSimHit.h:207
FPGATrackSimHit::isBarrel
bool isBarrel() const
Definition: FPGATrackSimHit.h:66
FPGATrackSimHit::m_etaModule
int m_etaModule
Definition: FPGATrackSimHit.h:199
FPGATrackSimTypes.h
FPGATrackSimHit::getPhiWidth
unsigned getPhiWidth() const
Definition: FPGATrackSimHit.h:86
FPGATrackSimHit::setBarcodePt
void setBarcodePt(float v)
Definition: FPGATrackSimHit.h:148
SiliconTech::undefined
@ undefined
SiliconTech::pixel
@ pixel
FPGATrackSimHit::getStripRowIDForITk
int getStripRowIDForITk() const
Definition: FPGATrackSimHit.h:169
FPGATrackSimHit::operator<<
friend std::ostream & operator<<(std::ostream &, const FPGATrackSimHit &)
Definition: FPGATrackSimHit.cxx:143
FPGATrackSimHit::m_parentage_mask
unsigned long m_parentage_mask
Definition: FPGATrackSimHit.h:249
FPGATrackSimHit::getHitType
HitType getHitType() const
Definition: FPGATrackSimHit.h:57
HitType::unmapped
@ unmapped
FPGATrackSimHit::getBarcode
HepMcParticleLink::barcode_type getBarcode() const
Definition: FPGATrackSimHit.h:153
FPGATrackSimHit::setHitType
void setHitType(HitType type)
Definition: FPGATrackSimHit.h:54
sortByLayer
std::vector< std::vector< std::shared_ptr< const FPGATrackSimHit > > > sortByLayer(Container const &hits)
Definition: FPGATrackSimHit.h:270
FPGATrackSimHit::getGCotTheta
float getGCotTheta() const
Definition: FPGATrackSimHit.h:142
DetectorZone::undefined
@ undefined
LArGeo::ATan2
GeoGenfun::FunctionNoop ATan2(GeoGenfun::GENFUNCTION y, GeoGenfun::GENFUNCTION x)
Definition: BarrelAuxFunctions.cxx:50