ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Acts::DD4hepDetectorElement Class Reference

DetectorElement class implementation for DD4hep geometry. More...

#include <acts/blob/master/Plugins/DD4hep/include/Acts/Plugins/DD4hep/DD4hepDetectorElement.hpp>

+ Inheritance diagram for Acts::DD4hepDetectorElement:
+ Collaboration diagram for Acts::DD4hepDetectorElement:

Public Types

using ContextType = GeometryContext
 Broadcast the context type.
 
- Public Types inherited from Acts::TGeoDetectorElement
using ContextType = GeometryContext
 Broadcast the context type.
 

Public Member Functions

 DD4hepDetectorElement (const dd4hep::DetElement detElement, const std::string &axes="XYZ", double scalor=1., bool isDisc=false, std::shared_ptr< const ISurfaceMaterial > material=nullptr, std::shared_ptr< const DigitizationModule > digitizationModule=nullptr)
 
 ~DD4hepDetectorElement () override=default
 Desctructor.
 
- Public Member Functions inherited from Acts::TGeoDetectorElement
 TGeoDetectorElement (const Identifier &identifier, TGeoNode *tGeoDetElement, const TGeoMatrix *mGlobal=nullptr, const std::string &axes="XYZ", double scalor=1., bool isDisc=false, std::shared_ptr< const Acts::ISurfaceMaterial > material=nullptr, std::shared_ptr< const Acts::DigitizationModule > digitizationModule=nullptr)
 
 TGeoDetectorElement (const Identifier &identifier, const TGeoMatrix &transform, TGeoNode *tGeoDetElement, const std::string &axes="XYZ", double scalor=1., bool isDisc=false, std::shared_ptr< const Acts::ISurfaceMaterial > material=nullptr, std::shared_ptr< const Acts::DigitizationModule > digitizationModule=nullptr)
 
 ~TGeoDetectorElement () override
 Destructor.
 
Identifier identifier () const final
 Identifier.
 
const Transform3Dtransform (const GeometryContext &gctx) const final
 
const Surfacesurface () const final
 Return surface associated with this identifier, which should come from the.
 
double thickness () const final
 Returns the thickness of the module.
 
const std::shared_ptr< const
Acts::DigitizationModule
digitizationModule () const final
 Retrieve the DigitizationModule.
 

Private Attributes

dd4hep::DetElement m_detElement
 DD4hep detector element.
 
dd4hep::Segmentation m_segmentation
 DD4hep segmentation.
 

Additional Inherited Members

- Protected Member Functions inherited from Acts::TGeoDetectorElement
void construct (const Double_t *rotation=nullptr, const Double_t *translation=nullptr, const std::string &axes="XYZ", double scalor=1., bool isDisc=false, std::shared_ptr< const Acts::ISurfaceMaterial > material=nullptr)
 

Detailed Description

DetectorElement class implementation for DD4hep geometry.

DetectorElement plugin for DD4hep detector elements. DD4hep is based on TGeo shapes, therefore the DD4hepDetectorElement inherits from TGeoDetectorElement. The full geometrical information is provided by the TGeoDetectorElement. The DD4hepDetectorElement extends the TGeoDetectorElement by containing a segmentation for the readout.

Definition at line 41 of file DD4hepDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 41 of file DD4hepDetectorElement.hpp

Member Typedef Documentation

Broadcast the context type.

Definition at line 44 of file DD4hepDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 44 of file DD4hepDetectorElement.hpp

Constructor & Destructor Documentation

Acts::DD4hepDetectorElement::DD4hepDetectorElement ( const dd4hep::DetElement  detElement,
const std::string &  axes = "XYZ",
double  scalor = 1.,
bool  isDisc = false,
std::shared_ptr< const ISurfaceMaterial material = nullptr,
std::shared_ptr< const DigitizationModule digitizationModule = nullptr 
)

Constructor

Parameters
detElementThe DD4hep DetElement which should be linked to a surface
axesis the axis orientation with respect to the tracking frame it is a string of the three characters x, y and z (standing for the three axes) There is a distinction between capital and lower case characters :
  • capital -> positive orientation of the axis
  • lower case -> negative oriantation of the axis

Example options are:

  • "XYZ" -> identical frame definition (default value)
  • "YZX" -> node y axis is tracking x axis, etc.
  • "XzY" -> negative node z axis is tracking y axis, etc.
    Parameters
    scaloris the scale factor for unit conversion if needed
    isDiscin case the sensitive detector module should be translated as disc (e.g. for endcaps) this flag should be set to true
    Note
    In the translation from a 3D geometry (TGeo) which only knows tubes to a 2D geometry (Tracking geometry) a distinction if the module should be described as a cylinder or a disc surface needs to be done. Since this information can not be taken just from the geometry description (both can be described as TGeoTubeSeg), one needs to set the flag 'isDisc' in case a volume with shape TGeoTubeSeg should be translated to a disc surface. Per default it will be translated into a cylindrical surface.
    Parameters
    materialPossible material of detector element

Definition at line 16 of file DD4hepDetectorElement.cpp.

View newest version in sPHENIX GitHub at line 16 of file DD4hepDetectorElement.cpp

Acts::DD4hepDetectorElement::~DD4hepDetectorElement ( )
overridedefault

Desctructor.

Member Data Documentation

dd4hep::DetElement Acts::DD4hepDetectorElement::m_detElement
private

DD4hep detector element.

Definition at line 86 of file DD4hepDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 86 of file DD4hepDetectorElement.hpp

dd4hep::Segmentation Acts::DD4hepDetectorElement::m_segmentation
private

DD4hep segmentation.

Definition at line 88 of file DD4hepDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 88 of file DD4hepDetectorElement.hpp


The documentation for this class was generated from the following files: