ATLAS Offline Software
TgcCoinData.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // TgcCoinData.h
7 // Header file for class TgcCoinData
9 // (c) ATLAS Detector software
11 
12 #ifndef MUONTRIGCOINDATA_TGCCOINDATA_H
13 #define MUONTRIGCOINDATA_TGCCOINDATA_H
14 
19 #include "Identifier/Identifier.h"
22 #include "TrkSurfaces/Surface.h"
23 
24 #include "GaudiKernel/MsgStream.h"
25 
26 #include <inttypes.h>
27 #include <iostream>
28 
30 
31 namespace Muon
32 {
33  class TgcCoinDataContainerCnv_p1;
34  class TgcCoinDataContainerCnv_p2;
35  class TgcCoinDataContainerCnv_p3;
36 
37  class TgcCoinData {
38 
40  // Public methods:
42  public:
43 
44  friend class ::TgcCoinDataContainerCnv;
48 
49  typedef enum {
56 
58  TgcCoinData();
59  TgcCoinData(const TgcCoinData &);
61 
63  friend MsgStream& operator << (MsgStream& sl, const TgcCoinData& coin);
64 
66  friend std::ostream& operator << (std::ostream& sl, const TgcCoinData& coin);
67 
69 
70  //for HIPT and TRACKLET
72  const Identifier& channelIdOut,
73  const IdentifierHash &collectionIdHash,
74  const MuonGM::TgcReadoutElement* detElIn,
75  const MuonGM::TgcReadoutElement* detElOut,
76  const CoinDataType type,
77  const bool isAside,
78  const int phi,
79  const bool isInner,
80  const bool isForward,
81  const bool isStrip,
82  const int trackletId,
83  const Amg::Vector2D *posIn,
84  const Amg::Vector2D *posOut,
85  const double widthIn,
86  const double widthOut,
87  const int delta,
88  const int sub,
89  const int inner,
90  const int roi = 0,
91  const int pt = 0,
92  const int trackletIdStrip = 0,
93  const Amg::MatrixX* errMat = nullptr,
94  const bool isPositiveDeltaR = false,
95  const bool veto = false);
96 
97  //for TYPE_TRACKLET_EIFI
99  const IdentifierHash &collectionIdHash,
100  const MuonGM::TgcReadoutElement* detElIn,
101  const CoinDataType type,
102  const bool isAside,
103  const int phi,
104  const bool isForward,
105  const bool isStrip,
106  const Amg::Vector2D *posIn,
107  const double widthIn,
108  const int sub);
109 
110  //for SL
112  const IdentifierHash &collectionIdHash,
113  const MuonGM::TgcReadoutElement* detElOut,
114  const CoinDataType type,
115  const bool isAside,
116  const int phi,
117  const bool isForward,
118  const int trackletId,
119  const int trackletIdStrip,
120  const Amg::Vector2D *posOut,
121  const Amg::MatrixX *errMat,
122  const int roi,
123  const int pt,
124  const bool veto,
125  const bool isPositiveDeltaR);
126 
128  ~TgcCoinData();
129 
131  Identifier identify() const;
132 
135 
138 
139 
140  void setHashAndIndex(unsigned short collHash, unsigned short objIndex);
141  void setHashAndIndex(unsigned int indexAndHash);
142  const IdentContIndex& getHashAndIndex() const;
143 
145  Identifier channelIdIn() const;
146 
148  Identifier channelIdOut() const;
149 
151  CoinDataType type() const;
152 
154  bool isAside() const;
155 
157  int phi() const;
158 
160  bool isInner() const;
161 
163  bool isForward() const;
164 
166  bool isStrip() const;
167 
169  int trackletId() const;
170 
172  int trackletIdStrip() const;
173 
175  const Amg::Vector2D &posIn() const;
176  const Amg::Vector2D *posInPtr() const;
177 
179  const Amg::Vector2D &posOut() const;
180  const Amg::Vector2D *posOutPtr() const;
181 
183  bool hasErrMat() const;
184 
186  const Amg::MatrixX &errMat() const;
187 
189  double widthIn() const;
190 
192  double widthOut() const;
193 
195  int delta() const;
196 
198  int roi() const;
199 
201  int pt() const;
202 
204  bool veto() const;
205 
207  int sub() const;
208 
210  int inner() const;
211 
213  bool isPositiveDeltaR() const;
214 
217 
220 
222  const Amg::Vector3D& globalposIn() const;
223 
225  const Amg::Vector3D& globalposOut() const;
226 
228  static constexpr uint32_t INNER_NSW_R_BITSHIFT = 0;
229  static constexpr uint32_t INNER_NSW_R_BIT = 0xFF;
230  static constexpr uint32_t INNER_NSW_PHI_BITSHIFT = 8;
231  static constexpr uint32_t INNER_NSW_PHI_BIT = 0x3F;
232  static constexpr uint32_t INNER_NSW_DTHETA_BITSHIFT = 14;
233  static constexpr uint32_t INNER_NSW_DTHETA_BIT = 0x1F;
234  static constexpr uint32_t INNER_NSW_PHIRES_BITSHIFT = 19;
235  static constexpr uint32_t INNER_NSW_PHIRES_BIT = 0x1;
236  static constexpr uint32_t INNER_NSW_LOWRES_BITSHIFT = 20;
237  static constexpr uint32_t INNER_NSW_LOWRES_BIT = 0x1;
238  static constexpr uint32_t INNER_NSW_ID_BITSHIFT = 21;
239  static constexpr uint32_t INNER_NSW_ID_BIT = 0xF;
240  static constexpr uint32_t INNER_NSW_BCID_BITSHIFT = 25;
241  static constexpr uint32_t INNER_NSW_BCID_BIT = 0xF;
242  static constexpr uint32_t INNER_NSW_INPUT_BITSHIFT = 29;
243  static constexpr uint32_t INNER_NSW_INPUT_BIT = 0x7;
244 
246  static constexpr uint32_t INNER_RPC_ETA_BITSHIFT = 0;
247  static constexpr uint32_t INNER_RPC_ETA_BIT = 0x3F;
248  static constexpr uint32_t INNER_RPC_PHI_BITSHIFT = 6;
249  static constexpr uint32_t INNER_RPC_PHI_BIT = 0x3F;
250  static constexpr uint32_t INNER_RPC_DETA_BITSHIFT = 12;
251  static constexpr uint32_t INNER_RPC_DETA_BIT = 0x7;
252  static constexpr uint32_t INNER_RPC_DPHI_BITSHIFT = 15;
253  static constexpr uint32_t INNER_RPC_DPHI_BIT = 0x7;
254  static constexpr uint32_t INNER_RPC_FLAG_BITSHIFT = 18;
255  static constexpr uint32_t INNER_RPC_FLAG_BIT = 0x3;
256  static constexpr uint32_t INNER_RPC_BCID_BITSHIFT = 20;
257  static constexpr uint32_t INNER_RPC_BCID_BIT = 0xF;
258 
260  static constexpr uint32_t INNER_EIFI_EI_BITSHIFT = 0;
261  static constexpr uint32_t INNER_EIFI_EI_BIT = 0xFF;
262  static constexpr uint32_t INNER_EIFI_FI_BITSHIFT = 8;
263  static constexpr uint32_t INNER_EIFI_FI_BIT = 0xFF;
264  static constexpr uint32_t INNER_EIFI_CID_BITSHIFT = 16;
265  static constexpr uint32_t INNER_EIFI_CID_BIT = 0x7;
266 
268  static constexpr uint32_t INNER_TILE_MODULE_BITSHIFT = 0;
269  static constexpr uint32_t INNER_TILE_MODULE_BIT = 0xFFF;
270  static constexpr uint32_t INNER_TILE_BCID_BITSHIFT = 12;
271  static constexpr uint32_t INNER_TILE_BCID_BIT = 0xF;
272 
273  private:
274 
278 
280 
283 
285  bool m_isAside;
286  int m_phi;
287  bool m_isInner;
289  bool m_isStrip;
295  double m_widthIn;
296  double m_widthOut;
297 
298  int m_delta;
299  int m_roi;
300  int m_pt;
301  bool m_veto;
302 
303  int m_sub;
304  int m_inner;
306 
309  };
311  // inline methods:
313 
316  return m_channelIdOut;
317  }
318 
320 
322  {
324  }
325 
326  inline void TgcCoinData::setHashAndIndex(unsigned short collHash, unsigned short objIndex)
327  {
328  m_indexAndHash.setCollHash(collHash);
329  m_indexAndHash.setObjIndex(objIndex);
330  }
331 
332  inline void TgcCoinData::setHashAndIndex(unsigned int indexAndHash)
333  {
334  m_indexAndHash.setHashAndIndex(indexAndHash);
335  }
336 
338  {
339  return m_indexAndHash;
340  }
341 
343 
345 
347 
348  inline bool TgcCoinData::isAside() const{ return m_isAside; }
349 
350  inline int TgcCoinData::phi() const{ return m_phi; }
351 
352  inline bool TgcCoinData::isInner() const{ return m_isInner; }
353 
354  inline bool TgcCoinData::isForward() const{ return m_isForward; }
355 
356  inline bool TgcCoinData::isStrip() const{ return m_isStrip; }
357 
358  inline int TgcCoinData::trackletId() const{ return m_trackletId; }
359 
360  inline int TgcCoinData::trackletIdStrip() const{ return m_trackletIdStrip; }
361 
362  inline const Amg::Vector2D& TgcCoinData::posIn() const{ return *m_posIn; }
363  inline const Amg::Vector2D* TgcCoinData::posInPtr() const{ return m_posIn; }
364 
365  inline const Amg::Vector2D& TgcCoinData::posOut() const{ return *m_posOut; }
366  inline const Amg::Vector2D* TgcCoinData::posOutPtr() const{ return m_posOut; }
367 
368  inline bool TgcCoinData::hasErrMat() const{ return m_errMat != nullptr; }
369 
370  inline const Amg::MatrixX& TgcCoinData::errMat() const{ return *m_errMat; }
371 
372  inline double TgcCoinData::widthIn() const{ return m_widthIn; }
373 
374  inline double TgcCoinData::widthOut() const{ return m_widthOut; }
375 
376  inline int TgcCoinData::delta() const{ return m_delta; }
377 
378  inline int TgcCoinData::roi() const{ return m_roi; }
379 
380  inline int TgcCoinData::pt() const{ return m_pt; }
381 
382  inline bool TgcCoinData::veto() const{ return m_veto; }
383 
384  inline int TgcCoinData::sub() const{ return m_sub; }
385 
386  inline int TgcCoinData::inner() const{ return m_inner; }
387 
388  inline bool TgcCoinData::isPositiveDeltaR() const{ return m_isPositiveDeltaR; }
389 
391  {
392  return m_detElIn;
393  }
394 
396  {
397  return m_detElOut;
398  }
399 
401  {
402  if(not m_globalposIn) {
403  if (m_detElIn) {
404  m_globalposIn.set(std::make_unique<const Amg::Vector3D>(
406  .Trk::Surface::localToGlobal(*m_posIn)));
407  } else {
408  m_globalposIn.set(std::make_unique<const Amg::Vector3D>(0., 0., 0.));
409  }
410  }
411  return *m_globalposIn;
412  }
413 
415  {
416  if(not m_globalposOut) {
417  if (m_detElOut && m_posOut) {
418  m_globalposOut.set(std::make_unique<const Amg::Vector3D>(
420  .Trk::Surface::localToGlobal(*m_posOut)));
421  } else {
422  m_globalposOut.set(std::make_unique<const Amg::Vector3D>(0., 0., 0.));
423  }
424  }
425  return *m_globalposOut;
426  }
427 }
428 
429 #endif // MUONTRIGCOINDATA_TGCCOINDATA_H
Muon::TgcCoinData::hasErrMat
bool hasErrMat() const
Test to see if the error matrix is present.
Definition: TgcCoinData.h:368
TgcCoinDataContainerCnv
Create derived converter to customize the saving of identifiable container.
Definition: TgcCoinDataContainerCnv.h:30
Muon::TgcCoinData::INNER_RPC_DPHI_BITSHIFT
static constexpr uint32_t INNER_RPC_DPHI_BITSHIFT
Definition: TgcCoinData.h:252
Muon::TgcCoinData::m_detElIn
const MuonGM::TgcReadoutElement * m_detElIn
Definition: TgcCoinData.h:281
Muon::TgcCoinData::operator<<
friend MsgStream & operator<<(MsgStream &sl, const TgcCoinData &coin)
Overload of << operator for MsgStream for debug output.
Definition: TgcCoinData.cxx:282
Muon::TgcCoinData::m_type
CoinDataType m_type
Definition: TgcCoinData.h:284
Muon::TgcCoinData::INNER_TILE_BCID_BITSHIFT
static constexpr uint32_t INNER_TILE_BCID_BITSHIFT
Definition: TgcCoinData.h:270
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition: EventPrimitives.h:27
Muon::TgcCoinData::INNER_RPC_DETA_BIT
static constexpr uint32_t INNER_RPC_DETA_BIT
Definition: TgcCoinData.h:251
Muon::TgcCoinData::m_pt
int m_pt
Definition: TgcCoinData.h:300
Muon::TgcCoinData::operator=
TgcCoinData & operator=(const TgcCoinData &)
Definition: TgcCoinData.cxx:238
Surface.h
Muon::TgcCoinData::INNER_RPC_BCID_BIT
static constexpr uint32_t INNER_RPC_BCID_BIT
Definition: TgcCoinData.h:257
Muon::TgcCoinData::m_isPositiveDeltaR
bool m_isPositiveDeltaR
Definition: TgcCoinData.h:305
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
Muon::TgcCoinData::channelIdOut
Identifier channelIdOut() const
return offlineID on track on TGC3
Definition: TgcCoinData.h:344
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
Muon::TgcCoinData::INNER_EIFI_EI_BIT
static constexpr uint32_t INNER_EIFI_EI_BIT
Definition: TgcCoinData.h:261
Muon::TgcCoinData::globalposOut
const Amg::Vector3D & globalposOut() const
return global position of track on TGC3
Definition: TgcCoinData.h:414
Muon::TgcCoinData::isAside
bool isAside() const
Aside or Cside.
Definition: TgcCoinData.h:348
Muon::TgcCoinData::type
CoinDataType type() const
return the coincidence type (HIPT, LPT, SL)
Definition: TgcCoinData.h:346
Muon::TgcCoinData::m_isAside
bool m_isAside
Definition: TgcCoinData.h:285
CxxUtils::CachedUniquePtrT
Cached pointer with atomic update.
Definition: CachedUniquePtr.h:54
Muon::TgcCoinData::INNER_EIFI_FI_BIT
static constexpr uint32_t INNER_EIFI_FI_BIT
Definition: TgcCoinData.h:263
Muon::TgcCoinData::inner
int inner() const
return InnerCoincidecne trigger bits
Definition: TgcCoinData.h:386
Muon::TgcCoinData::m_widthOut
double m_widthOut
Definition: TgcCoinData.h:296
Muon::TgcCoinData::TgcCoinData
TgcCoinData()
Public, Copy, operator=, constructor.
Definition: TgcCoinData.cxx:171
Muon::TgcCoinData::INNER_NSW_PHIRES_BIT
static constexpr uint32_t INNER_NSW_PHIRES_BIT
Definition: TgcCoinData.h:235
Muon::TgcCoinData::INNER_RPC_PHI_BITSHIFT
static constexpr uint32_t INNER_RPC_PHI_BITSHIFT
Definition: TgcCoinData.h:248
Muon::TgcCoinData::isStrip
bool isStrip() const
Strip hit or Wire hit?
Definition: TgcCoinData.h:356
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
Muon::TgcCoinData::m_roi
int m_roi
Definition: TgcCoinData.h:299
IdentContIndex
Identifiable container index to a contained object.
Definition: IdentContIndex.h:23
Muon::TgcCoinData::TYPE_TRACKLET
@ TYPE_TRACKLET
Definition: TgcCoinData.h:50
Muon::TgcCoinData::INNER_NSW_BCID_BITSHIFT
static constexpr uint32_t INNER_NSW_BCID_BITSHIFT
Definition: TgcCoinData.h:240
Muon::TgcCoinData::trackletId
int trackletId() const
return trackletId (Identifier for each track)
Definition: TgcCoinData.h:358
Muon::TgcCoinData::veto
bool veto() const
return veto bit
Definition: TgcCoinData.h:382
Muon::TgcCoinData::m_collectionIdHash
IdentifierHash m_collectionIdHash
Definition: TgcCoinData.h:277
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition: TrackSystemController.h:45
IdentContIndex::setObjIndex
void setObjIndex(unsigned short index)
set combined index
Definition: IdentContIndex.h:133
Muon::TgcCoinData::INNER_RPC_DETA_BITSHIFT
static constexpr uint32_t INNER_RPC_DETA_BITSHIFT
Definition: TgcCoinData.h:250
Muon::TgcCoinData::m_indexAndHash
IdentContIndex m_indexAndHash
Definition: TgcCoinData.h:279
IdentContIndex::setCollHash
void setCollHash(unsigned short hash)
set object index in collection
Definition: IdentContIndex.h:126
MuonGM::MuonClusterReadoutElement::surface
virtual const Trk::PlaneSurface & surface() const override
access to chamber surface (phi orientation), uses the first gas gap
Definition: MuonClusterReadoutElement.h:123
Muon::TgcCoinData::identifyHash
IdentifierHash identifyHash() const
return the identifierHash of Outer Hit
Definition: TgcCoinData.h:319
Muon::TgcCoinData::isPositiveDeltaR
bool isPositiveDeltaR() const
return isPositiveDeltaR (isMuplus) of SL
Definition: TgcCoinData.h:388
Muon::TgcCoinData::INNER_RPC_DPHI_BIT
static constexpr uint32_t INNER_RPC_DPHI_BIT
Definition: TgcCoinData.h:253
Muon::TgcCoinData
Definition: TgcCoinData.h:37
Muon::TgcCoinData::INNER_NSW_INPUT_BITSHIFT
static constexpr uint32_t INNER_NSW_INPUT_BITSHIFT
Definition: TgcCoinData.h:242
Muon::TgcCoinData::INNER_NSW_ID_BITSHIFT
static constexpr uint32_t INNER_NSW_ID_BITSHIFT
Definition: TgcCoinData.h:238
Muon::TgcCoinData::INNER_NSW_DTHETA_BIT
static constexpr uint32_t INNER_NSW_DTHETA_BIT
Definition: TgcCoinData.h:233
Muon::TgcCoinData::m_channelIdIn
Identifier m_channelIdIn
Definition: TgcCoinData.h:275
Muon::TgcCoinData::globalposIn
const Amg::Vector3D & globalposIn() const
return global position of track on TGC1(HIPT) or TGC2(TRACKLET)
Definition: TgcCoinData.h:400
Muon::TgcCoinData::trackletIdStrip
int trackletIdStrip() const
return trackletId for strip (Identifier for each track)
Definition: TgcCoinData.h:360
Muon::TgcCoinData::delta
int delta() const
return the deviation from Pt=oo track
Definition: TgcCoinData.h:376
GeoPrimitives.h
Muon::TgcCoinData::isInner
bool isInner() const
Inner layers or BW.
Definition: TgcCoinData.h:352
Muon::TgcCoinData::CoinDataType
CoinDataType
Definition: TgcCoinData.h:49
Muon::TgcCoinData::INNER_NSW_PHIRES_BITSHIFT
static constexpr uint32_t INNER_NSW_PHIRES_BITSHIFT
Definition: TgcCoinData.h:234
Muon::TgcCoinData::TYPE_HIPT
@ TYPE_HIPT
Definition: TgcCoinData.h:51
Muon::TgcCoinData::INNER_TILE_MODULE_BIT
static constexpr uint32_t INNER_TILE_MODULE_BIT
Definition: TgcCoinData.h:269
Muon::TgcCoinDataContainerCnv_p3
Definition: TgcCoinDataContainerCnv_p3.h:28
Muon::TgcCoinData::setHashAndIndex
void setHashAndIndex(unsigned short collHash, unsigned short objIndex)
Definition: TgcCoinData.h:326
Muon::TgcCoinData::m_isForward
bool m_isForward
Definition: TgcCoinData.h:288
Muon::TgcCoinData::posIn
const Amg::Vector2D & posIn() const
return Local position of track on TGC1(HIPT) or TGC2(TRACKLET)
Definition: TgcCoinData.h:362
Muon::TgcCoinData::m_sub
int m_sub
Definition: TgcCoinData.h:303
CachedUniquePtr.h
Cached unique_ptr with atomic update.
Muon::TgcCoinData::m_veto
bool m_veto
Definition: TgcCoinData.h:301
Muon::TgcCoinData::widthIn
double widthIn() const
return region width of hit on TGC1
Definition: TgcCoinData.h:372
Muon::TgcCoinData::errMat
const Amg::MatrixX & errMat() const
return 2d width of ROI for SL: errMat[0][0]==(width for R), errMat[1][1]==(width for phi)
Definition: TgcCoinData.h:370
MuonGM::TgcReadoutElement
A TgcReadoutElement corresponds to a single TGC chamber; therefore typically a TGC station contains s...
Definition: MuonDetDescr/MuonReadoutGeometry/MuonReadoutGeometry/TgcReadoutElement.h:42
Muon::TgcCoinData::m_errMat
const Amg::MatrixX * m_errMat
Definition: TgcCoinData.h:294
Muon::TgcCoinData::m_trackletIdStrip
int m_trackletIdStrip
Definition: TgcCoinData.h:291
Muon::TgcCoinData::INNER_RPC_ETA_BITSHIFT
static constexpr uint32_t INNER_RPC_ETA_BITSHIFT
Bit info in int inner for the RPC inner-coincidence.
Definition: TgcCoinData.h:246
Muon::TgcCoinData::widthOut
double widthOut() const
return region width of hit on TGC2(TRACKLET) or TGC3(HIPT)
Definition: TgcCoinData.h:374
Muon::TgcCoinData::INNER_TILE_MODULE_BITSHIFT
static constexpr uint32_t INNER_TILE_MODULE_BITSHIFT
Bit info in int inner for the Tile inner-coincidence.
Definition: TgcCoinData.h:268
Muon::TgcCoinData::INNER_NSW_DTHETA_BITSHIFT
static constexpr uint32_t INNER_NSW_DTHETA_BITSHIFT
Definition: TgcCoinData.h:232
Muon::TgcCoinData::m_isInner
bool m_isInner
Definition: TgcCoinData.h:287
Muon::TgcCoinData::~TgcCoinData
~TgcCoinData()
Destructor:
Definition: TgcCoinData.cxx:163
Muon::TgcCoinData::INNER_RPC_BCID_BITSHIFT
static constexpr uint32_t INNER_RPC_BCID_BITSHIFT
Definition: TgcCoinData.h:256
Muon::TgcCoinData::posInPtr
const Amg::Vector2D * posInPtr() const
Definition: TgcCoinData.h:363
Muon::TgcCoinData::TYPE_UNKNOWN
@ TYPE_UNKNOWN
Definition: TgcCoinData.h:53
Muon::TgcCoinData::detectorElementIn
const MuonGM::TgcReadoutElement * detectorElementIn() const
return TgcReadoutElement of track on TGC1(HIPT) or TGC2(TRACKLET)
Definition: TgcCoinData.h:390
Muon::TgcCoinData::INNER_RPC_FLAG_BIT
static constexpr uint32_t INNER_RPC_FLAG_BIT
Definition: TgcCoinData.h:255
Muon::TgcCoinData::INNER_NSW_LOWRES_BIT
static constexpr uint32_t INNER_NSW_LOWRES_BIT
Definition: TgcCoinData.h:237
Muon::TgcCoinData::m_detElOut
const MuonGM::TgcReadoutElement * m_detElOut
Definition: TgcCoinData.h:282
Muon::TgcCoinData::m_posOut
const Amg::Vector2D * m_posOut
Definition: TgcCoinData.h:293
Muon::TgcCoinData::INNER_NSW_PHI_BIT
static constexpr uint32_t INNER_NSW_PHI_BIT
Definition: TgcCoinData.h:231
Muon::TgcCoinData::m_posIn
const Amg::Vector2D * m_posIn
Definition: TgcCoinData.h:292
EventPrimitives.h
Muon::TgcCoinData::m_widthIn
double m_widthIn
Definition: TgcCoinData.h:295
Muon::TgcCoinDataContainerCnv_p1
Definition: TgcCoinDataContainerCnv_p1.h:28
Muon::TgcCoinData::getHashAndIndex
const IdentContIndex & getHashAndIndex() const
Definition: TgcCoinData.h:337
IdentContIndex.h
IdentifierHash.h
Muon::TgcCoinData::INNER_NSW_R_BITSHIFT
static constexpr uint32_t INNER_NSW_R_BITSHIFT
Bit info in int inner for the NSW inner-coincidence.
Definition: TgcCoinData.h:228
Muon::TgcCoinData::roi
int roi() const
return ROI number
Definition: TgcCoinData.h:378
Muon::TgcCoinData::posOutPtr
const Amg::Vector2D * posOutPtr() const
Definition: TgcCoinData.h:366
Muon::TgcCoinData::m_globalposOut
CxxUtils::CachedUniquePtr< const Amg::Vector3D > m_globalposOut
Definition: TgcCoinData.h:308
Muon::TgcCoinData::m_globalposIn
CxxUtils::CachedUniquePtr< const Amg::Vector3D > m_globalposIn
Definition: TgcCoinData.h:307
Muon::TgcCoinData::INNER_NSW_BCID_BIT
static constexpr uint32_t INNER_NSW_BCID_BIT
Definition: TgcCoinData.h:241
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
Muon::TgcCoinData::INNER_RPC_FLAG_BITSHIFT
static constexpr uint32_t INNER_RPC_FLAG_BITSHIFT
Definition: TgcCoinData.h:254
Muon::TgcCoinData::posOut
const Amg::Vector2D & posOut() const
return Local position of track on TGC3
Definition: TgcCoinData.h:365
Muon::TgcCoinData::isForward
bool isForward() const
Forward region or Endcap region.
Definition: TgcCoinData.h:354
Muon::TgcCoinData::INNER_RPC_ETA_BIT
static constexpr uint32_t INNER_RPC_ETA_BIT
Definition: TgcCoinData.h:247
Muon::TgcCoinData::m_isStrip
bool m_isStrip
Definition: TgcCoinData.h:289
Muon::TgcCoinData::INNER_EIFI_CID_BIT
static constexpr uint32_t INNER_EIFI_CID_BIT
Definition: TgcCoinData.h:265
Muon::TgcCoinData::sub
int sub() const
return subMatrix of Tracklet or hsub of HiPt
Definition: TgcCoinData.h:384
IdentContIndex::setHashAndIndex
void setHashAndIndex(unsigned int hashAndIndex)
Setters of hash, obj index and combined index.
Definition: IdentContIndex.h:117
Muon::TgcCoinData::m_trackletId
int m_trackletId
Definition: TgcCoinData.h:290
Muon::TgcCoinData::pt
int pt() const
return pt threshold value
Definition: TgcCoinData.h:380
Muon::TgcCoinData::TYPE_SL
@ TYPE_SL
Definition: TgcCoinData.h:52
Muon::TgcCoinData::INNER_NSW_ID_BIT
static constexpr uint32_t INNER_NSW_ID_BIT
Definition: TgcCoinData.h:239
Muon::TgcCoinData::m_inner
int m_inner
Definition: TgcCoinData.h:304
Muon::TgcCoinData::setIdentifier
void setIdentifier(Identifier in, Identifier out)
set the OfflineID of Inner and Outer Hits
Definition: TgcCoinData.h:321
Muon::TgcCoinData::TYPE_TRACKLET_EIFI
@ TYPE_TRACKLET_EIFI
Definition: TgcCoinData.h:54
Muon::TgcCoinData::INNER_EIFI_FI_BITSHIFT
static constexpr uint32_t INNER_EIFI_FI_BITSHIFT
Definition: TgcCoinData.h:262
Muon::TgcCoinData::channelIdIn
Identifier channelIdIn() const
return offlineID on TGC1(HIPT) or TGC2(TRACKLET)
Definition: TgcCoinData.h:342
Muon::TgcCoinDataContainerCnv_p2
Definition: TgcCoinDataContainerCnv_p2.h:27
TgcReadoutElement.h
Muon::TgcCoinData::identify
Identifier identify() const
return OfflineID of Outer Hit
Definition: TgcCoinData.h:314
Muon::TgcCoinData::INNER_NSW_PHI_BITSHIFT
static constexpr uint32_t INNER_NSW_PHI_BITSHIFT
Definition: TgcCoinData.h:230
Muon::TgcCoinData::m_channelIdOut
Identifier m_channelIdOut
Definition: TgcCoinData.h:276
Muon::TgcCoinData::detectorElementOut
const MuonGM::TgcReadoutElement * detectorElementOut() const
return TgcReadoutElement of track on TGC3
Definition: TgcCoinData.h:395
Muon::TgcCoinData::INNER_RPC_PHI_BIT
static constexpr uint32_t INNER_RPC_PHI_BIT
Definition: TgcCoinData.h:249
Muon::TgcCoinData::m_phi
int m_phi
Definition: TgcCoinData.h:286
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
Muon::TgcCoinData::INNER_NSW_R_BIT
static constexpr uint32_t INNER_NSW_R_BIT
Definition: TgcCoinData.h:229
Muon::TgcCoinData::m_delta
int m_delta
Definition: TgcCoinData.h:298
Muon::TgcCoinData::INNER_NSW_INPUT_BIT
static constexpr uint32_t INNER_NSW_INPUT_BIT
Definition: TgcCoinData.h:243
Muon::TgcCoinData::INNER_EIFI_CID_BITSHIFT
static constexpr uint32_t INNER_EIFI_CID_BITSHIFT
Definition: TgcCoinData.h:264
Muon::TgcCoinData::INNER_NSW_LOWRES_BITSHIFT
static constexpr uint32_t INNER_NSW_LOWRES_BITSHIFT
Definition: TgcCoinData.h:236
Muon::TgcCoinData::INNER_EIFI_EI_BITSHIFT
static constexpr uint32_t INNER_EIFI_EI_BITSHIFT
Bit info in int inner for the EI/FI inner-coincidence.
Definition: TgcCoinData.h:260
Muon::TgcCoinData::INNER_TILE_BCID_BIT
static constexpr uint32_t INNER_TILE_BCID_BIT
Definition: TgcCoinData.h:271
Muon::TgcCoinData::phi
int phi() const
return phi number of trigger sector
Definition: TgcCoinData.h:350
Identifier
Definition: IdentifierFieldParser.cxx:14