Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
TRT_BarrelElement.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
9 #ifndef TRT_READOUTGEOMETRY_TRT_BARRELELEMENT_H
10 #define TRT_READOUTGEOMETRY_TRT_BARRELELEMENT_H
11 
15 #include <atomic>
16 
17 class TRT_ID;
18 
19 namespace Trk{
20  class Surface;
21  class SurfaceBounds;
22 }
23 
24 class SurfaceCache;
25 
26 namespace InDetDD {
27 
28  class TRT_BarrelConditions;
29 
44 
45  public:
46 
48  TRT_BarrelElement(const GeoVFullPhysVol* volume,
49  const TRT_BarrelDescriptor* descriptor,
50  bool isPositive,
51  unsigned int modIndex,
52  unsigned int phiIndex,
53  unsigned int strawLayIndex,
54  const TRT_ID* idHelper,
55  const TRT_Conditions* conditions);
56 
58 
60  virtual ~TRT_BarrelElement() = default;
61 
63  virtual TRT_BaseElement::Type type() const override final;
64 
68  static const TRT_BarrelConditions * getConditionsData() ;
69 
73 
76  inline double strawXPos (unsigned int i) const;
77 
80  inline double strawYPos (unsigned int i) const;
81 
84  inline double strawZPos (unsigned int i) const;
85 
87  virtual const double & strawLength() const override final;
88 
90  virtual int strawDirection() const override final;
91 
94 
97 
100 
103 
105  void setNextInPhi(const TRT_BarrelElement *element);
106 
109 
111  void setNextInR(const TRT_BarrelElement *element);
112 
114  void setPreviousInR(const TRT_BarrelElement *element);
115 
118 
120  virtual const Trk::SurfaceBounds & strawBounds() const override final;
121 
122  private:
127  virtual HepGeom::Transform3D calculateStrawTransform(int straw, GeoAlignmentStore* alignStore) const override;
130  virtual const Trk::Surface & elementSurface() const override;
132  virtual void createSurfaceCache(GeoAlignmentStore* alignStore) const override;
134 
135  // Private Member data:
142  };
143 }
144 
145 #include "TRT_BarrelElement.icc"
146 #endif
147 
148 
InDetDD::TRT_BarrelElement::strawXPos
double strawXPos(unsigned int i) const
Get X Position: DEPRECATED.
GeoAlignmentStore
Ensure that the extensions for the Vector3D are properly loaded.
Definition: GeoAlignmentStore.h:24
InDetDD::TRT_BarrelElement::m_nextInPhi
const TRT_BarrelElement * m_nextInPhi
Definition: TRT_BarrelElement.h:138
InDetDD::TRT_BarrelElement
Definition: TRT_BarrelElement.h:43
TRT::Hit::straw
@ straw
Definition: HitInfo.h:82
InDetDD::TRT_BarrelElement::setPreviousInR
void setPreviousInR(const TRT_BarrelElement *element)
Sets the previous-in-r detector.
Definition: TRT_BarrelElement.cxx:92
InDetDD::TRT_BarrelElement::previousInPhi
const TRT_BarrelElement * previousInPhi() const
Returns the previous-in-phi detector element, or zero if none (forseeing gaps, in other words).
InDetDD::TRT_BarrelDescriptor
Definition: TRT_BarrelDescriptor.h:40
InDetDD::TRT_BarrelElement::type
virtual TRT_BaseElement::Type type() const override final
Type information.
InDetDD::TRT_BarrelElement::m_nextInR
const TRT_BarrelElement * m_nextInR
Definition: TRT_BarrelElement.h:140
Surface
Definition: Trigger/TrigAccel/TrigCudaFitter/src/Surface.h:8
InDetDD::TRT_BarrelElement::strawBounds
virtual const Trk::SurfaceBounds & strawBounds() const override final
Surface bounds.
Definition: TRT_BarrelElement.cxx:153
InDetDD::TRT_BarrelElement::m_descriptor
const TRT_BarrelDescriptor * m_descriptor
Definition: TRT_BarrelElement.h:137
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
InDetDD::TRT_Conditions
Definition: TRT_Conditions.h:30
InDetDD::TRT_BarrelElement::setNextInPhi
void setNextInPhi(const TRT_BarrelElement *element)
Sets the next-in-phi detector.
Definition: TRT_BarrelElement.cxx:77
InDetDD::TRT_BarrelElement::setNextInR
void setNextInR(const TRT_BarrelElement *element)
Sets the next-in-r detector.
Definition: TRT_BarrelElement.cxx:87
InDetDD::TRT_BarrelElement::m_previousInPhi
const TRT_BarrelElement * m_previousInPhi
Definition: TRT_BarrelElement.h:139
InDetDD::TRT_BarrelElement::nextInPhi
const TRT_BarrelElement * nextInPhi() const
Returns the next-in-phi detector element, or zero if none (forseeing gaps, in other words).
InDetDD::TRT_BarrelElement::getConditionsData
static const TRT_BarrelConditions * getConditionsData()
Returns a pointer to conditions data.
Definition: TRT_BarrelElement.cxx:67
InDetDD::TRT_BarrelElement::~TRT_BarrelElement
virtual ~TRT_BarrelElement()=default
Destructor:
InDetDD::TRT_BarrelElement::createSurfaceCacheHelper
SurfaceCache createSurfaceCacheHelper() const
Definition: TRT_BarrelElement.cxx:179
lumiFormat.i
int i
Definition: lumiFormat.py:85
InDetDD::TRT_BarrelElement::getDescriptor
const TRT_BarrelDescriptor * getDescriptor() const
Returns a pointer to a descriptor, giving common information on module construction:
Definition: TRT_BarrelElement.cxx:72
InDetDD::TRT_BarrelElement::strawLength
virtual const double & strawLength() const override final
Get the length of the straws (active length):
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
InDetDD::TRT_BarrelElement::TRT_BarrelElement
TRT_BarrelElement(const GeoVFullPhysVol *volume, const TRT_BarrelDescriptor *descriptor, bool isPositive, unsigned int modIndex, unsigned int phiIndex, unsigned int strawLayIndex, const TRT_ID *idHelper, const TRT_Conditions *conditions)
Constructor:
Definition: TRT_BarrelElement.cxx:25
InDetDD::TRT_BarrelElement::nextInR
const TRT_BarrelElement * nextInR() const
Returns the next-in-R detector element, or zero if none.
InDetDD::TRT_BaseElement::conditions
const TRT_Conditions * conditions() const
Return the TRT_Conditions object associated to this Detector element.
InDetDD::TRT_BarrelElement::m_previousInR
const TRT_BarrelElement * m_previousInR
Definition: TRT_BarrelElement.h:141
TRT_BarrelDescriptor.h
InDetDD::TRT_BarrelElement::calculateLocalStrawTransform
HepGeom::Transform3D calculateLocalStrawTransform(int straw) const
Definition: TRT_BarrelElement.cxx:126
InDetDD::TRT_BarrelElement::getCode
const TRT_BarrelCode & getCode() const
Doomed (?):
InDetDD::TRT_BaseElement::Type
Type
Definition: TRT_BaseElement.h:56
TRT_BaseElement.h
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
InDetDD::SurfaceCache
Definition: InnerDetector/InDetDetDescr/InDetReadoutGeometry/InDetReadoutGeometry/SurfaceCache.h:68
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
columnar::final
CM final
Definition: ColumnAccessor.h:106
InDetDD::TRT_BarrelElement::strawDirection
virtual int strawDirection() const override final
StrawDirection.
Definition: TRT_BarrelElement.cxx:231
HepGeom
Definition: VP1String.h:30
eflowRec::phiIndex
unsigned int phiIndex(float phi, float binsize)
calculate phi index for a given phi
Definition: EtaPhiLUT.cxx:23
TRT_ID
Definition: TRT_ID.h:84
calibdata.delete
list delete
Definition: calibdata.py:46
InDetDD::TRT_BarrelElement::m_code
TRT_BarrelCode m_code
Definition: TRT_BarrelElement.h:136
InDetDD::TRT_BarrelElement::elementSurface
virtual const Trk::Surface & elementSurface() const override
return the surface of the element
Definition: TRT_BarrelElement.cxx:158
InDetDD::TRT_BarrelElement::strawZPos
double strawZPos(unsigned int i) const
Get Z Position: (active center) DEPRECATED.
InDetDD
Message Stream Member.
Definition: FakeTrackBuilder.h:8
InDetDD::TRT_BarrelElement::previousInR
const TRT_BarrelElement * previousInR() const
Returns the next-in-R detector element, or zero if none.
InDetDD::TRT_BarrelElement::createSurfaceCache
virtual void createSurfaceCache(GeoAlignmentStore *alignStore) const override
create the cache for the element
Definition: TRT_BarrelElement.cxx:166
InDetDD::TRT_BarrelCode
Definition: TRT_BarrelCode.h:27
InDetDD::TRT_BarrelElement::setPreviousInPhi
void setPreviousInPhi(const TRT_BarrelElement *element)
Sets the previous-in-phi detector.
Definition: TRT_BarrelElement.cxx:82
TRT_BarrelCode.h
InDetDD::TRT_BarrelElement::strawYPos
double strawYPos(unsigned int i) const
Get Y Position: DEPRECATED.
InDetDD::TRT_BarrelElement::calculateStrawTransform
virtual HepGeom::Transform3D calculateStrawTransform(int straw, GeoAlignmentStore *alignStore) const override
These transforms are effectively to the local coord system of a straw derived from GeoModel -> hence ...
Definition: TRT_BarrelElement.cxx:99
InDetDD::TRT_BaseElement
Definition: TRT_BaseElement.h:52