ATLAS Offline Software
|
#include <TRT_BarrelElement.h>
Public Types | |
enum | Type { BARREL, ENDCAP } |
Public Member Functions | |
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: More... | |
TRT_BarrelElement (const TRT_BarrelElement &right) | |
virtual | ~TRT_BarrelElement ()=default |
Destructor: More... | |
virtual TRT_BaseElement::Type | type () const override final |
Type information. More... | |
const TRT_BarrelDescriptor * | getDescriptor () const |
Returns a pointer to a descriptor, giving common information on module construction: More... | |
double | strawXPos (unsigned int i) const |
Get X Position: DEPRECATED. More... | |
double | strawYPos (unsigned int i) const |
Get Y Position: DEPRECATED. More... | |
double | strawZPos (unsigned int i) const |
Get Z Position: (active center) DEPRECATED. More... | |
virtual const double & | strawLength () const override final |
Get the length of the straws (active length): More... | |
virtual int | strawDirection () const override final |
StrawDirection. More... | |
const TRT_BarrelElement * | nextInPhi () const |
Returns the next-in-phi detector element, or zero if none (forseeing gaps, in other words). More... | |
const TRT_BarrelElement * | previousInPhi () const |
Returns the previous-in-phi detector element, or zero if none (forseeing gaps, in other words). More... | |
const TRT_BarrelElement * | nextInR () const |
Returns the next-in-R detector element, or zero if none. More... | |
const TRT_BarrelElement * | previousInR () const |
Returns the next-in-R detector element, or zero if none. More... | |
void | setNextInPhi (const TRT_BarrelElement *element) |
Sets the next-in-phi detector. More... | |
void | setPreviousInPhi (const TRT_BarrelElement *element) |
Sets the previous-in-phi detector. More... | |
void | setNextInR (const TRT_BarrelElement *element) |
Sets the next-in-r detector. More... | |
void | setPreviousInR (const TRT_BarrelElement *element) |
Sets the previous-in-r detector. More... | |
const TRT_BarrelCode & | getCode () const |
Doomed (?): More... | |
virtual const Trk::SurfaceBounds & | strawBounds () const override final |
Surface bounds. More... | |
virtual Identifier | identify () const override final |
identifier of this detector element: More... | |
virtual IdentifierHash | identifyHash () const override final |
identifier hash More... | |
const GeoTrf::Transform3D & | defTransform () const |
Get Default Transform (of module in barrel, layer in endcap) from GeoModel before alignment corrections. More... | |
const HepGeom::Transform3D | getAbsoluteTransform (int straw) const |
This is an alias to strawTransform(int straw) More... | |
virtual const Trk::Surface & | surface () const override final |
Element Surface: access to the Surface (straw layer) More... | |
virtual const Trk::Surface & | surface (const Identifier &id) const override final |
Straw Surface: access to the surface via identifier. More... | |
virtual const Trk::SurfaceBounds & | bounds () const override final |
Straw layer bounds. More... | |
virtual const Trk::SurfaceBounds & | bounds (const Identifier &id) const override final |
Straw Surface: access to the bounds via Identifier. More... | |
virtual const Amg::Transform3D & | transform () const override final |
Element Surface: Get Transform of element in Tracking frame: Amg. More... | |
virtual const Amg::Transform3D & | transform (const Identifier &id) const override final |
Straw Surface: access to the transform of individual straw in Tracking frame: Amg. More... | |
virtual const Amg::Vector3D & | center () const override final |
Element Surface: center of a straw layer. More... | |
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() More... | |
virtual const Amg::Vector3D & | normal () const override final |
Element Surface: normal of a straw layer. More... | |
virtual const Amg::Vector3D & | normal (const Identifier &id) const override final |
Normal of a straw. More... | |
virtual Trk::DetectorElemType | detectorType () const override final |
TrkDetElementBase interface detectorTyoe. More... | |
const std::vector< const Trk::Surface * > & | surfaces () const |
Returns the full list of all detection surfaces associated to this detector element. More... | |
const Amg::Transform3D & | strawTransform (unsigned int straw) const |
Straw transform - fast access in array, in Tracking frame: Amg. More... | |
const Amg::Transform3D & | strawTransform (int straw) const |
Straw Surface: Local -> global transform of the straw via integer. More... | |
const Trk::StraightLineSurface & | strawSurface (int straw) const |
Straw Surface: access to the surface via integer. More... | |
const Amg::Vector3D & | strawCenter (int straw) const |
Straw Surface: Local -> global transform of the straw via integer. More... | |
Amg::Vector3D | strawAxis (int straw) const |
Straw axis. More... | |
unsigned int | nStraws () const |
Number of straws in the element. More... | |
void | invalidate () |
Invalidate cache. More... | |
void | updateAllCaches () |
Update all caches. More... | |
const TRT_Conditions * | conditions () const |
Return the TRT_Conditions object associated to this Detector element. More... | |
void | createSurfaceCache (Identifier id) const |
create the surface & surface cache for the straw More... | |
void | invalidateOther () const |
invalidate action on the cache More... | |
std::string | detectorTypeString () const |
Returns a string of the Detector element type. More... | |
Static Public Member Functions | |
static const TRT_BarrelConditions * | getConditionsData () |
Returns a pointer to conditions data. More... | |
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 More... | |
CxxUtils::CachedValue< std::vector< const Trk::Surface * > > | m_surfaces |
CxxUtils::CachedValue< SurfaceCache > | m_surfaceCache |
Private Member Functions | |
const TRT_BarrelElement & | operator= (const TRT_BarrelElement &right)=delete |
Illegal Operations: More... | |
virtual HepGeom::Transform3D | calculateStrawTransform (int straw) const override |
These transforms are effectively to the local coord system of a straw derived from GeoModel -> hence CLHEP. More... | |
HepGeom::Transform3D | calculateLocalStrawTransform (int straw) const |
virtual const Trk::Surface & | elementSurface () const override |
return the surface of the element More... | |
virtual void | createSurfaceCache () const override |
create the cache for the element More... | |
SurfaceCache | createSurfaceCacheHelper () const |
void | deleteCache () |
Helper method for cache dealing. More... | |
Extended TRT_BaseElement to describe a TRT readout element, this is a planar layer with n ( order of 20 ) straws, in one of the 32 sectors of the TRT barrel.
The number of straws described by this readout element can be retrieved by nStraws()
Definition at line 44 of file TRT_BarrelElement.h.
|
inherited |
InDetDD::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 | ||
) |
InDetDD::TRT_BarrelElement::TRT_BarrelElement | ( | const TRT_BarrelElement & | right | ) |
Definition at line 53 of file TRT_BarrelElement.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 126 of file TRT_BarrelElement.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 99 of file TRT_BarrelElement.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.
|
inherited |
Return the TRT_Conditions object associated to this Detector element.
|
overrideprivatevirtual |
create the cache for the element
Implements InDetDD::TRT_BaseElement.
Definition at line 166 of file TRT_BarrelElement.cxx.
|
inherited |
create the surface & surface cache for the straw
Definition at line 161 of file TRT_BaseElement.cxx.
|
private |
Definition at line 179 of file TRT_BarrelElement.cxx.
|
inherited |
|
privateinherited |
|
finaloverridevirtualinherited |
TrkDetElementBase interface detectorTyoe.
Implements Trk::TrkDetElementBase.
|
inherited |
|
overrideprivatevirtual |
return the surface of the element
Implements InDetDD::TRT_BaseElement.
Definition at line 158 of file TRT_BarrelElement.cxx.
|
inherited |
This is an alias to strawTransform(int straw)
Definition at line 42 of file TRT_BaseElement.cxx.
const TRT_BarrelCode& InDetDD::TRT_BarrelElement::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 67 of file TRT_BarrelElement.cxx.
const TRT_BarrelDescriptor * InDetDD::TRT_BarrelElement::getDescriptor | ( | ) | const |
Returns a pointer to a descriptor, giving common information on module construction:
Definition at line 72 of file TRT_BarrelElement.cxx.
|
finaloverridevirtualinherited |
identifier of this detector element:
Implements Trk::TrkDetElementBase.
|
finaloverridevirtualinherited |
identifier hash
Implements Trk::TrkDetElementBase.
|
inherited |
|
inlineinherited |
const TRT_BarrelElement* InDetDD::TRT_BarrelElement::nextInPhi | ( | ) | const |
Returns the next-in-phi detector element, or zero if none (forseeing gaps, in other words).
const TRT_BarrelElement* InDetDD::TRT_BarrelElement::nextInR | ( | ) | const |
Returns the next-in-R detector element, or zero if none.
|
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 |
Illegal Operations:
const TRT_BarrelElement* InDetDD::TRT_BarrelElement::previousInPhi | ( | ) | const |
Returns the previous-in-phi detector element, or zero if none (forseeing gaps, in other words).
const TRT_BarrelElement* InDetDD::TRT_BarrelElement::previousInR | ( | ) | const |
Returns the next-in-R detector element, or zero if none.
void InDetDD::TRT_BarrelElement::setNextInPhi | ( | const TRT_BarrelElement * | element | ) |
Sets the next-in-phi detector.
Definition at line 77 of file TRT_BarrelElement.cxx.
void InDetDD::TRT_BarrelElement::setNextInR | ( | const TRT_BarrelElement * | element | ) |
Sets the next-in-r detector.
Definition at line 87 of file TRT_BarrelElement.cxx.
void InDetDD::TRT_BarrelElement::setPreviousInPhi | ( | const TRT_BarrelElement * | element | ) |
Sets the previous-in-phi detector.
Definition at line 82 of file TRT_BarrelElement.cxx.
void InDetDD::TRT_BarrelElement::setPreviousInR | ( | const TRT_BarrelElement * | element | ) |
Sets the previous-in-r detector.
Definition at line 92 of file TRT_BarrelElement.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 154 of file TRT_BaseElement.cxx.
|
finaloverridevirtual |
Surface bounds.
Implements InDetDD::TRT_BaseElement.
Definition at line 153 of file TRT_BarrelElement.cxx.
|
inherited |
Straw Surface: Local -> global transform of the straw via integer.
Definition at line 143 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 231 of file TRT_BarrelElement.cxx.
|
finaloverridevirtual |
Get the length of the straws (active length):
Implements InDetDD::TRT_BaseElement.
|
inherited |
Straw Surface: access to the surface via integer.
Definition at line 121 of file TRT_BaseElement.cxx.
|
inherited |
Straw Surface: Local -> global transform of the straw via integer.
Definition at line 132 of file TRT_BaseElement.cxx.
|
inherited |
|
inline |
Get X Position: DEPRECATED.
Please use starwCenter(i).x()
|
inline |
Get Y Position: DEPRECATED.
Please use starwCenter(i).y()
|
inline |
Get Z Position: (active center) DEPRECATED.
Please use starwCenter(i).z()
|
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 |
|
private |
Definition at line 137 of file TRT_BarrelElement.h.
|
protectedinherited |
Definition at line 213 of file TRT_BaseElement.h.
|
private |
Definition at line 138 of file TRT_BarrelElement.h.
|
protectedinherited |
Definition at line 204 of file TRT_BaseElement.h.
|
protectedinherited |
Definition at line 205 of file TRT_BaseElement.h.
Definition at line 212 of file TRT_BaseElement.h.
|
private |
Definition at line 139 of file TRT_BarrelElement.h.
|
private |
Definition at line 141 of file TRT_BarrelElement.h.
|
protectedinherited |
Definition at line 211 of file TRT_BaseElement.h.
|
private |
Definition at line 140 of file TRT_BarrelElement.h.
|
private |
Definition at line 142 of file TRT_BarrelElement.h.
|
protectedinherited |
Definition at line 216 of file TRT_BaseElement.h.
|
protectedinherited |
helper element surface for the cache
Definition at line 217 of file TRT_BaseElement.h.
|
protectedinherited |
Definition at line 214 of file TRT_BaseElement.h.
|
protectedinherited |
Definition at line 220 of file TRT_BaseElement.h.
|
protectedinherited |
Definition at line 219 of file TRT_BaseElement.h.