ATLAS Offline Software
Public Member Functions | List of all members
Trk::TrkDetElementBase Class Referenceabstract

#include <TrkDetElementBase.h>

Inheritance diagram for Trk::TrkDetElementBase:
Collaboration diagram for Trk::TrkDetElementBase:

Public Member Functions

 TrkDetElementBase (const GeoVFullPhysVol *fullPhysVol)
 Constructor from GeoVFullPhysVolume. More...
 
virtual ~TrkDetElementBase ()=default
 virtual Destructor More...
 
virtual Identifier identify () const =0
 Identifier. More...
 
virtual IdentifierHash identifyHash () const =0
 Identifier hash. More...
 
virtual const Amg::Transform3Dtransform () const =0
 Return local to global transform. More...
 
virtual const Amg::Transform3Dtransform (const Identifier &id) const =0
 Return local to global transform associated with this identifier. More...
 
virtual const Surfacesurface () const =0
 Return surface associated with this detector element. More...
 
virtual const Surfacesurface (const Identifier &id) const =0
 Return surface associated with this identifier, which should come from the PrepRawData object (i.e. More...
 
virtual const SurfaceBoundsbounds () const =0
 Return the boundaries of the element. More...
 
virtual const SurfaceBoundsbounds (const Identifier &id) const =0
 Return the boundaries of the surface associated with this identifier. More...
 
virtual const Amg::Vector3Dcenter () const =0
 Return the center of the element. More...
 
virtual const Amg::Vector3Dcenter (const Identifier &id) const =0
 Return the center of the surface associated with this identifier In the case of silicon it returns the same as center() More...
 
virtual const Amg::Vector3Dnormal () const =0
 Return the normal of the element. More...
 
virtual const Amg::Vector3Dnormal (const Identifier &id) const =0
 Return the normal of the surface associated with this identifier In the case of silicon it returns the same as normal() More...
 
virtual DetectorElemType detectorType () const =0
 Return the Detector element type. More...
 
std::string detectorTypeString () const
 Returns a string of the Detector element type. More...
 

Detailed Description

This is the base class for all tracking detector elements with read-out relevant information.

It serves as the interface to GeoModel and hence incorporates the division between CLHEP (GeoModel) and Amg (Tracking) math libraries.

It is extended in the Inner Detector and Muon System realm.

Author
Andre.nosp@m.as.S.nosp@m.alzbu.nosp@m.rger.nosp@m.@cern.nosp@m..ch

Definition at line 51 of file TrkDetElementBase.h.

Constructor & Destructor Documentation

◆ TrkDetElementBase()

Trk::TrkDetElementBase::TrkDetElementBase ( const GeoVFullPhysVol *  fullPhysVol)

Constructor from GeoVFullPhysVolume.

Definition at line 7 of file TrkDetElementBase.cxx.

8  : GeoVDetectorElement(fullPhysVol) {}

◆ ~TrkDetElementBase()

virtual Trk::TrkDetElementBase::~TrkDetElementBase ( )
virtualdefault

virtual Destructor

Member Function Documentation

◆ bounds() [1/2]

virtual const SurfaceBounds& Trk::TrkDetElementBase::bounds ( ) const
pure virtual

◆ bounds() [2/2]

virtual const SurfaceBounds& Trk::TrkDetElementBase::bounds ( const Identifier id) const
pure virtual

Return the boundaries of the surface associated with this identifier.

For TRT this will be a straw, while for silicon it returns the same as bounds()

Implemented in MuonGM::MdtReadoutElement, InDetDD::TRT_BaseElement, MuonGM::MuonClusterReadoutElement, and InDetDD::SolidStateDetectorElementBase.

◆ center() [1/2]

virtual const Amg::Vector3D& Trk::TrkDetElementBase::center ( ) const
pure virtual

◆ center() [2/2]

virtual const Amg::Vector3D& Trk::TrkDetElementBase::center ( const Identifier id) const
pure virtual

Return the center of the surface associated with this identifier In the case of silicon it returns the same as center()

Implemented in InDetDD::TRT_BaseElement, MuonGM::MuonClusterReadoutElement, InDetDD::SolidStateDetectorElementBase, and MuonGM::MdtReadoutElement.

◆ detectorType()

virtual DetectorElemType Trk::TrkDetElementBase::detectorType ( ) const
pure virtual

◆ detectorTypeString()

std::string Trk::TrkDetElementBase::detectorTypeString ( ) const

Returns a string of the Detector element type.

Definition at line 10 of file TrkDetElementBase.cxx.

10  {
11  auto type = detectorType();
13  return "SolidState";
15  return "Silicon";
16  else if (type == Trk::DetectorElemType::TRT)
17  return "TRT";
18  else if (type == Trk::DetectorElemType::Csc)
19  return "Csc";
20  else if (type == Trk::DetectorElemType::Mdt)
21  return "Mdt";
22  else if (type == Trk::DetectorElemType::Rpc)
23  return "Rpc";
24  else if (type == Trk::DetectorElemType::Tgc)
25  return "Tgc";
27  return "sTgc";
28  else if (type == Trk::DetectorElemType::MM)
29  return "Mm";
30  return "Unknown";
31 }

◆ identify()

virtual Identifier Trk::TrkDetElementBase::identify ( ) const
pure virtual

◆ identifyHash()

virtual IdentifierHash Trk::TrkDetElementBase::identifyHash ( ) const
pure virtual

◆ normal() [1/2]

virtual const Amg::Vector3D& Trk::TrkDetElementBase::normal ( ) const
pure virtual

◆ normal() [2/2]

virtual const Amg::Vector3D& Trk::TrkDetElementBase::normal ( const Identifier id) const
pure virtual

Return the normal of the surface associated with this identifier In the case of silicon it returns the same as normal()

Implemented in InDetDD::TRT_BaseElement, MuonGM::MuonClusterReadoutElement, InDetDD::SolidStateDetectorElementBase, and MuonGM::MdtReadoutElement.

◆ surface() [1/2]

virtual const Surface& Trk::TrkDetElementBase::surface ( ) const
pure virtual

Return surface associated with this detector element.

Implemented in InDetDD::SolidStateDetectorElementBase, MuonGM::MdtReadoutElement, InDetDD::TRT_BaseElement, and MuonGM::MuonClusterReadoutElement.

◆ surface() [2/2]

virtual const Surface& Trk::TrkDetElementBase::surface ( const Identifier id) const
pure virtual

Return surface associated with this identifier, which should come from the PrepRawData object (i.e.

Surface s = PRD.detElement().surface( PRD.identify() ). This is only really relevant for the TRT (where there are several surfaces per detector element). For other detector elements it will just return surface() ... the Identifier is ignored.

Implemented in MuonGM::MdtReadoutElement, InDetDD::TRT_BaseElement, MuonGM::MuonClusterReadoutElement, and InDetDD::SolidStateDetectorElementBase.

◆ transform() [1/2]

virtual const Amg::Transform3D& Trk::TrkDetElementBase::transform ( ) const
pure virtual

◆ transform() [2/2]

virtual const Amg::Transform3D& Trk::TrkDetElementBase::transform ( const Identifier id) const
pure virtual

Return local to global transform associated with this identifier.

Implemented in MuonGM::MdtReadoutElement, InDetDD::TRT_BaseElement, MuonGM::MuonClusterReadoutElement, and InDetDD::SolidStateDetectorElementBase.


The documentation for this class was generated from the following files:
Trk::DetectorElemType::Tgc
@ Tgc
Trk::DetectorElemType::TRT
@ TRT
Trk::DetectorElemType::Csc
@ Csc
Trk::TrkDetElementBase::detectorType
virtual DetectorElemType detectorType() const =0
Return the Detector element type.
Trk::DetectorElemType::Silicon
@ Silicon
Trk::DetectorElemType::SolidState
@ SolidState
Trk::DetectorElemType::sTgc
@ sTgc
Trk::DetectorElemType::MM
@ MM
Trk::DetectorElemType::Rpc
@ Rpc
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
Trk::DetectorElemType::Mdt
@ Mdt