![]() |
ATLAS Offline Software
|
Extended class of a TRT_BaseElement to describe a readout elment in the endcap. More...
#include <TRT_EndcapElement.h>
Public Types | |
| enum | Type { BARREL , ENDCAP } |
Public Member Functions | |
| TRT_EndcapElement (const GeoVFullPhysVol *volume, const TRT_EndcapDescriptor *descriptor, bool isPositive, unsigned int wheelIndex, unsigned int strawLayIndex, unsigned int phiIndex, const TRT_ID *idHelper, const TRT_Conditions *conditions) | |
| Constructor. | |
| TRT_EndcapElement (const TRT_EndcapElement &right) | |
| virtual | ~TRT_EndcapElement () |
| Destructor: | |
| virtual TRT_BaseElement::Type | type () const override final |
| Type information: | |
| virtual const double & | strawLength () const override |
| Active straw length. | |
| virtual int | strawDirection () const override final |
| StrawDirection. | |
| const TRT_EndcapDescriptor * | getDescriptor () const |
| Returns a pointer to a descriptor, giving common information on module construction. | |
| const TRT_EndcapElement * | nextInZ () const |
| Next in Z: | |
| const TRT_EndcapElement * | previousInZ () const |
| Prev in Z: | |
| void | setNextInZ (const TRT_EndcapElement *element) |
| Set Next in Z. | |
| void | setPreviousInZ (const TRT_EndcapElement *element) |
| Set Previous in Z. | |
| const TRT_EndcapCode & | getCode () const |
| Doomed (? | |
| virtual const Trk::SurfaceBounds & | strawBounds () const override final |
| the straw bounds | |
| virtual Identifier | identify () const override final |
| identifier of this detector element: | |
| virtual IdentifierHash | identifyHash () const override final |
| identifier hash | |
| const GeoTrf::Transform3D & | defTransform () const |
| Get Default Transform (of module in barrel, layer in endcap) from GeoModel before alignment corrections. | |
| const HepGeom::Transform3D | getAbsoluteTransform (int straw) const |
| This is an alias to strawTransform(int straw) | |
| virtual const Trk::Surface & | surface () const override final |
| Element Surface: access to the Surface (straw layer) | |
| virtual const Trk::Surface & | surface (const Identifier &id) const override final |
| Straw Surface: access to the surface via identifier. | |
| virtual const Trk::SurfaceBounds & | bounds () const override final |
| Straw layer bounds. | |
| virtual const Trk::SurfaceBounds & | bounds (const Identifier &id) const override final |
| Straw Surface: access to the bounds via Identifier. | |
| virtual const Amg::Transform3D & | transform () const override final |
| Element Surface: Get Transform of element in Tracking frame: Amg. | |
| virtual const Amg::Transform3D & | transform (const Identifier &id) const override final |
| Straw Surface: access to the transform of individual straw in Tracking frame: Amg. | |
| virtual const Amg::Vector3D & | center () const override final |
| Element Surface: center of a straw layer. | |
| virtual const Amg::Vector3D & | center (const Identifier &id) const override final |
| Straw Surface: Center of a straw using Identifier Straw center and straw axis can be obtained by the following: (The straw center is the center of the active region) Amg::Transform3D& transform = element->strawTransform(straw); Amb::Vector3D& center = element->strawCenter(); double r = element->strawCenter()->perp(); double phi = element->strawCenter()->phi(); Amg::Vector3D strawAxis = element->strawTransform(straw)* Vector3D(0,0,1) * strawDirection() | |
| virtual const Amg::Vector3D & | normal () const override final |
| Element Surface: normal of a straw layer. | |
| virtual const Amg::Vector3D & | normal (const Identifier &id) const override final |
| Normal of a straw. | |
| virtual Trk::DetectorElemType | detectorType () const override final |
| TrkDetElementBase interface detectorTyoe. | |
| const std::vector< const Trk::Surface * > & | surfaces () const |
| Returns the full list of all detection surfaces associated to this detector element. | |
| const Amg::Transform3D & | strawTransform (unsigned int straw) const |
| Straw transform - fast access in array, in Tracking frame: Amg. | |
| const Amg::Transform3D & | strawTransform (int straw) const |
| Straw Surface: Local -> global transform of the straw via integer. | |
| const Trk::StraightLineSurface & | strawSurface (int straw) const |
| Straw Surface: access to the surface via integer. | |
| const Amg::Vector3D & | strawCenter (int straw) const |
| Straw Surface: Local -> global transform of the straw via integer. | |
| Amg::Vector3D | strawAxis (int straw) const |
| Straw axis. | |
| unsigned int | nStraws () const |
| Number of straws in the element. | |
| void | invalidate () |
| Invalidate cache. | |
| void | updateAllCaches (GeoAlignmentStore *alignStore=nullptr) const |
| Update all caches. | |
| const TRT_Conditions * | conditions () const |
| Return the TRT_Conditions object associated to this Detector element. | |
| void | createSurfaceCache (Identifier id, GeoAlignmentStore *alignStore=nullptr) const |
| create the surface & surface cache for the straw | |
| void | invalidateOther () const |
| invalidate action on the cache | |
| std::string | detectorTypeString () const |
| Returns a string of the Detector element type. | |
Static Public Member Functions | |
| static const TRT_EndcapConditions * | getConditionsData () |
| Returns a pointer to conditions data. | |
Protected Member Functions | |
| const Amg::Vector3D & | center (const Identifier &id, GeoAlignmentStore *alignStore) const |
Protected Attributes | |
| Identifier | m_id |
| IdentifierHash | m_idHash |
| unsigned int | m_nstraws = 0 |
| const TRT_ID * | m_idHelper =nullptr |
| const TRT_Conditions * | m_conditions =nullptr |
| CxxUtils::CachedUniquePtr< Trk::Surface > | m_surface |
| std::vector< CxxUtils::CachedUniquePtr< Trk::StraightLineSurface > > | m_strawSurfaces {} |
| std::vector< CxxUtils::CachedUniquePtr< SurfaceCacheBase > > | m_strawSurfacesCache {} |
| helper element surface for the cache | |
| CxxUtils::CachedValue< std::vector< const Trk::Surface * > > | m_surfaces |
| CxxUtils::CachedValue< SurfaceCache > | m_surfaceCache |
Private Member Functions | |
| 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 CLHEP. | |
| HepGeom::Transform3D | calculateLocalStrawTransform (int straw) const |
| virtual const Trk::Surface & | elementSurface () const override |
| return the surface of the element | |
| virtual void | createSurfaceCache (GeoAlignmentStore *alignStore) const override |
| create the cache for the element | |
| SurfaceCache | createSurfaceCacheHelper (GeoAlignmentStore *alignStore) const |
| void | createSurfaceCache (Identifier id) const |
| create the cache for the straw of identifier id | |
| const TRT_EndcapElement & | operator= (const TRT_EndcapElement &right)=delete |
| void | deleteCache () |
| Helper method for cache dealing. | |
Private Attributes | |
| TRT_EndcapCode | m_code |
| const TRT_EndcapDescriptor * | m_descriptor |
| const TRT_EndcapElement * | m_nextInZ |
| const TRT_EndcapElement * | m_previousInZ |
Extended class of a TRT_BaseElement to describe a readout elment in the endcap.
It secifies the strawTransfrom methods by getting the information from GeoModel
The readout element in the EC is a wheel with straws radially placed on it.
The number of straws described by this readout element can be retrieved by nStraws()
Definition at line 43 of file TRT_EndcapElement.h.
|
inherited |
| InDetDD::TRT_EndcapElement::TRT_EndcapElement | ( | const GeoVFullPhysVol * | volume, |
| const TRT_EndcapDescriptor * | descriptor, | ||
| bool | isPositive, | ||
| unsigned int | wheelIndex, | ||
| unsigned int | strawLayIndex, | ||
| unsigned int | phiIndex, | ||
| const TRT_ID * | idHelper, | ||
| const TRT_Conditions * | conditions ) |
Constructor.
Definition at line 27 of file TRT_EndcapElement.cxx.
| InDetDD::TRT_EndcapElement::TRT_EndcapElement | ( | const TRT_EndcapElement & | right | ) |
Definition at line 54 of file TRT_EndcapElement.cxx.
|
virtualdefault |
Destructor:
|
finaloverridevirtualinherited |
Straw layer bounds.
Implements Trk::TrkDetElementBase.
|
finaloverridevirtualinherited |
Straw Surface: access to the bounds via Identifier.
Implements Trk::TrkDetElementBase.
Definition at line 72 of file TRT_BaseElement.cxx.
|
private |
Definition at line 144 of file TRT_EndcapElement.cxx.
|
overrideprivatevirtual |
These transforms are effectively to the local coord system of a straw derived from GeoModel -> hence CLHEP.
Implements InDetDD::TRT_BaseElement.
Definition at line 100 of file TRT_EndcapElement.cxx.
|
finaloverridevirtualinherited |
Element Surface: center of a straw layer.
Implements Trk::TrkDetElementBase.
|
finaloverridevirtualinherited |
Straw Surface: Center of a straw using Identifier Straw center and straw axis can be obtained by the following: (The straw center is the center of the active region) Amg::Transform3D& transform = element->strawTransform(straw); Amb::Vector3D& center = element->strawCenter(); double r = element->strawCenter()->perp(); double phi = element->strawCenter()->phi(); Amg::Vector3D strawAxis = element->strawTransform(straw)* Vector3D(0,0,1) * strawDirection()
Implements Trk::TrkDetElementBase.
Definition at line 110 of file TRT_BaseElement.cxx.
|
protectedinherited |
Definition at line 121 of file TRT_BaseElement.cxx.
|
inherited |
Return the TRT_Conditions object associated to this Detector element.
|
inherited |
create the surface & surface cache for the straw
Definition at line 172 of file TRT_BaseElement.cxx.
|
overrideprivatevirtual |
create the cache for the element
Implements InDetDD::TRT_BaseElement.
Definition at line 199 of file TRT_EndcapElement.cxx.
|
private |
create the cache for the straw of identifier id
|
private |
Definition at line 211 of file TRT_EndcapElement.cxx.
|
inherited |
|
privateinherited |
Helper method for cache dealing.
Definition at line 211 of file TRT_BaseElement.cxx.
|
finaloverridevirtualinherited |
TrkDetElementBase interface detectorTyoe.
Implements Trk::TrkDetElementBase.
|
inherited |
Returns a string of the Detector element type.
Definition at line 10 of file TrkDetElementBase.cxx.
|
overrideprivatevirtual |
return the surface of the element
Implements InDetDD::TRT_BaseElement.
Definition at line 191 of file TRT_EndcapElement.cxx.
|
inherited |
This is an alias to strawTransform(int straw)
Definition at line 42 of file TRT_BaseElement.cxx.
| const TRT_EndcapCode & InDetDD::TRT_EndcapElement::getCode | ( | ) | const |
Doomed (?
?)
|
static |
Returns a pointer to conditions data.
This includes information on dead and noisy wires, as well as wire sags.
Definition at line 76 of file TRT_EndcapElement.cxx.
| const TRT_EndcapDescriptor * InDetDD::TRT_EndcapElement::getDescriptor | ( | ) | const |
Returns a pointer to a descriptor, giving common information on module construction.
Definition at line 82 of file TRT_EndcapElement.cxx.
|
finaloverridevirtualinherited |
identifier of this detector element:
Implements Trk::TrkDetElementBase.
|
finaloverridevirtualinherited |
identifier hash
Implements Trk::TrkDetElementBase.
|
inherited |
Invalidate cache.
Definition at line 201 of file TRT_BaseElement.cxx.
|
inlineinherited |
| const TRT_EndcapElement * InDetDD::TRT_EndcapElement::nextInZ | ( | ) | const |
Next in Z:
|
finaloverridevirtualinherited |
Element Surface: normal of a straw layer.
Implements Trk::TrkDetElementBase.
|
finaloverridevirtualinherited |
Normal of a straw.
(Not very meaningful).
Implements Trk::TrkDetElementBase.
Definition at line 100 of file TRT_BaseElement.cxx.
|
inherited |
Number of straws in the element.
|
privatedelete |
| const TRT_EndcapElement * InDetDD::TRT_EndcapElement::previousInZ | ( | ) | const |
Prev in Z:
| void InDetDD::TRT_EndcapElement::setNextInZ | ( | const TRT_EndcapElement * | element | ) |
| void InDetDD::TRT_EndcapElement::setPreviousInZ | ( | const TRT_EndcapElement * | element | ) |
Set Previous in Z.
Definition at line 94 of file TRT_EndcapElement.cxx.
|
inherited |
Straw axis.
Always in direction of increasing eta. +ve z direction in barrel (for both +ve and -ve half) Away from beam pipe in -ve z endcap, Towards beam pipe in +ve endcap.
Definition at line 165 of file TRT_BaseElement.cxx.
|
finaloverridevirtual |
the straw bounds
Implements InDetDD::TRT_BaseElement.
Definition at line 185 of file TRT_EndcapElement.cxx.
|
inherited |
Straw Surface: Local -> global transform of the straw via integer.
Definition at line 154 of file TRT_BaseElement.cxx.
|
finaloverridevirtual |
StrawDirection.
+1 if axis is in same direction as local coordinate, -1 otherwise.
Implements InDetDD::TRT_BaseElement.
Definition at line 253 of file TRT_EndcapElement.cxx.
|
overridevirtual |
Active straw length.
Implements InDetDD::TRT_BaseElement.
Definition at line 70 of file TRT_EndcapElement.cxx.
|
inherited |
Straw Surface: access to the surface via integer.
Definition at line 132 of file TRT_BaseElement.cxx.
|
inherited |
Straw Surface: Local -> global transform of the straw via integer.
Definition at line 143 of file TRT_BaseElement.cxx.
|
inherited |
|
finaloverridevirtualinherited |
Element Surface: access to the Surface (straw layer)
Implements Trk::TrkDetElementBase.
|
finaloverridevirtualinherited |
Straw Surface: access to the surface via identifier.
Implements Trk::TrkDetElementBase.
Definition at line 48 of file TRT_BaseElement.cxx.
|
inherited |
Returns the full list of all detection surfaces associated to this detector element.
Definition at line 58 of file TRT_BaseElement.cxx.
|
finaloverridevirtualinherited |
Element Surface: Get Transform of element in Tracking frame: Amg.
Implements Trk::TrkDetElementBase.
|
finaloverridevirtualinherited |
Straw Surface: access to the transform of individual straw in Tracking frame: Amg.
Implements Trk::TrkDetElementBase.
Definition at line 78 of file TRT_BaseElement.cxx.
|
finaloverridevirtual |
Type information:
Implements InDetDD::TRT_BaseElement.
|
inherited |
Update all caches.
Definition at line 220 of file TRT_BaseElement.cxx.
|
private |
Definition at line 118 of file TRT_EndcapElement.h.
|
protectedinherited |
Definition at line 208 of file TRT_BaseElement.h.
|
private |
Definition at line 119 of file TRT_EndcapElement.h.
|
protectedinherited |
Definition at line 199 of file TRT_BaseElement.h.
|
protectedinherited |
Definition at line 200 of file TRT_BaseElement.h.
|
protectedinherited |
Definition at line 207 of file TRT_BaseElement.h.
|
private |
Definition at line 120 of file TRT_EndcapElement.h.
|
protectedinherited |
Definition at line 206 of file TRT_BaseElement.h.
|
private |
Definition at line 121 of file TRT_EndcapElement.h.
|
protectedinherited |
Definition at line 211 of file TRT_BaseElement.h.
|
protectedinherited |
|
protectedinherited |
Definition at line 209 of file TRT_BaseElement.h.
|
protectedinherited |
Definition at line 215 of file TRT_BaseElement.h.
|
protectedinherited |
Definition at line 214 of file TRT_BaseElement.h.