Analysis Software
Documentation for sPHENIX simulation 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/sPHENIX/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.
 
using Store = std::map< std::string, std::vector< std::shared_ptr< DD4hepDetectorElement >>>
 Define a string based story.
 
- 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)
 
 ~DD4hepDetectorElement () override=default
 
- Public Member Functions inherited from Acts::TGeoDetectorElement
 TGeoDetectorElement (const Identifier &identifier, const TGeoNode &tGeoNode, const TGeoMatrix &tGeoMatrix=TGeoIdentity(), const std::string &axes="XYZ", double scalor=10., std::shared_ptr< const Acts::ISurfaceMaterial > material=nullptr)
 
 TGeoDetectorElement (const Identifier &identifier, const TGeoNode &tGeoNode, const Transform3 &tgTransform, const std::shared_ptr< const PlanarBounds > &tgBounds, double tgThickness=0.)
 
 TGeoDetectorElement (const Identifier &identifier, const TGeoNode &tGeoNode, const Transform3 &tgTransform, const std::shared_ptr< const DiscBounds > &tgBounds, double tgThickness=0.)
 
 ~TGeoDetectorElement () override
 
Identifier identifier () const final
 Retrieve the Identifier.
 
const Transform3transform (const GeometryContext &gctx) const override
 
const Surfacesurface () const override
 Return surface associated with this detector element.
 
Surfacesurface () override
 
const std::shared_ptr< const
DigitizationModule
digitizationModule () const final
 Retrieve the DigitizationModule.
 
double thickness () const override
 Returns the thickness of the module.
 
const TGeoNode & tgeoNode () const
 Return the TGeoNode for back navigation.
 

Private Attributes

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

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 in order to perform the conversion.

The full geometrical information is provided by the TGeoDetectorElement. The DD4hepDetectorElement extends the TGeoDetectorElement by containing a segmentation for the readout.

Definition at line 39 of file DD4hepDetectorElement.hpp.

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

Member Typedef Documentation

Broadcast the context type.

Definition at line 42 of file DD4hepDetectorElement.hpp.

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

using Acts::DD4hepDetectorElement::Store = std::map<std::string, std::vector<std::shared_ptr<DD4hepDetectorElement>>>

Define a string based story.

Definition at line 46 of file DD4hepDetectorElement.hpp.

View newest version in sPHENIX GitHub at line 46 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 
)

Constructor

Parameters
detElementThe DD4hep DetElement which should be associated to an ACTS 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 orientation 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
    materialOptional material of detector element

Definition at line 23 of file DD4hepDetectorElement.cpp.

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

Acts::DD4hepDetectorElement::~DD4hepDetectorElement ( )
overridedefault

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: