ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
#include <acts/blob/master/Plugins/TGeo/include/Acts/Plugins/TGeo/TGeoDetectorElement.hpp>
Public Types | |
using | ContextType = GeometryContext |
Broadcast the context type. | |
Public Member Functions | |
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 Transform3D & | transform (const GeometryContext &gctx) const final |
const Surface & | surface () 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. | |
Protected Member Functions | |
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) |
Private Attributes | |
TGeoNode * | m_detElement {nullptr} |
DD4hep detector element, just linked - not owned. | |
std::shared_ptr< const Acts::Transform3D > | m_transform {nullptr} |
Transformation of the detector element. | |
std::shared_ptr< const Vector3D > | m_center {nullptr} |
Center position of the detector element. | |
std::shared_ptr< const Vector3D > | m_normal {nullptr} |
Normal vector to the detector element. | |
Identifier | m_identifier |
Identifier of the detector element. | |
std::shared_ptr< const SurfaceBounds > | m_bounds {nullptr} |
Boundaries of the detector element. | |
double | m_thickness {0.} |
Thickness of this detector element. | |
std::shared_ptr< const Surface > | m_surface {nullptr} |
Corresponding Surface. | |
std::shared_ptr< const Acts::DigitizationModule > | m_digitizationModule {nullptr} |
The Digitization module. | |
DetectorElement plugin for ROOT TGeo shapes. Added possibility to hand over transformation matrix.
Definition at line 35 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 35 of file TGeoDetectorElement.hpp
Broadcast the context type.
Definition at line 38 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 38 of file TGeoDetectorElement.hpp
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 |
||
) |
Constructor
identifier | is the detector identifier |
tGeoDetElement | is the TGeoNode which should be represented |
mGlobal | to global is the (optional) transform applied to the TGeoNode |
axes | is 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 :
|
scalor | is the scale factor for unit conversion if needed |
isDisc | in case the sensitive detector module should be translated as disc (e.g. for endcaps) this flag should be set to true |
TGeoTubeSeg
should be translated to a disc surface. Per default it will be translated into a cylindrical surface. material | Possible material of detector element |
digitizationModule | Shared pointer to the geometric digitization description |
Definition at line 35 of file TGeoDetectorElement.cpp.
View newest version in sPHENIX GitHub at line 35 of file TGeoDetectorElement.cpp
References construct(), m_detElement, and surface().
Acts::TGeoDetectorElement::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 |
||
) |
Alternative Constructor when the localToGlobal transform is already known for the detector element (e.g. usage in DD4hepPlugin)
identifier | is the detector identifier |
transform | the full transformation matrix of the detector element (local to global) |
tGeoDetElement | is the TGeoNode which should be represented |
axes | is 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 :
|
Example options are:
scalor | is the scale factor for unit conversion if needed |
isDisc | in case the sensitive detector module should be translated as disc (e.g. for endcaps) this flag should be set to true |
TGeoTubeSeg
should be translated to a disc surface. Per default it will be translated into a cylindrical surface. material | Possible material of detector element |
digitizationModule | Shared pointer to the geometric digitization description |
Definition at line 70 of file TGeoDetectorElement.cpp.
View newest version in sPHENIX GitHub at line 70 of file TGeoDetectorElement.cpp
References construct().
|
overridedefault |
Destructor.
|
protected |
Construct method called from the constructor directly
Definition at line 86 of file TGeoDetectorElement.cpp.
View newest version in sPHENIX GitHub at line 86 of file TGeoDetectorElement.cpp
References a, ab, kdfinder::abs(), b, M_PI, Acts::TGeoPrimitivesHelpers::makeTransform(), max, min, Acts::VectorHelpers::phi(), phi, Acts::Test::phiMin, radius, second, surface(), and v.
Referenced by TGeoDetectorElement().
|
inlinefinalvirtual |
Retrieve the DigitizationModule.
Implements Acts::IdentifiedDetectorElement.
Definition at line 193 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 193 of file TGeoDetectorElement.hpp
References m_digitizationModule.
|
inlinefinalvirtual |
Identifier.
Implements Acts::IdentifiedDetectorElement.
Definition at line 175 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 175 of file TGeoDetectorElement.hpp
References m_identifier.
|
inlinefinalvirtual |
Return surface associated with this identifier, which should come from the.
Implements Acts::DetectorElementBase.
Definition at line 184 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 184 of file TGeoDetectorElement.hpp
References m_surface.
Referenced by Acts::DD4hepLayerBuilder::createSensitiveSurface(), and TGeoDetectorElement().
|
inlinefinalvirtual |
Returns the thickness of the module.
Implements Acts::DetectorElementBase.
Definition at line 188 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 188 of file TGeoDetectorElement.hpp
References m_thickness.
|
inlinefinalvirtual |
Return local to global transform associated with this identifier
gctx | The current geometry context object, e.g. alignment |
Implements Acts::DetectorElementBase.
Definition at line 179 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 179 of file TGeoDetectorElement.hpp
References m_transform.
|
private |
Boundaries of the detector element.
Definition at line 166 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 166 of file TGeoDetectorElement.hpp
|
private |
Center position of the detector element.
Definition at line 160 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 160 of file TGeoDetectorElement.hpp
|
private |
DD4hep detector element, just linked - not owned.
Definition at line 156 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 156 of file TGeoDetectorElement.hpp
Referenced by TGeoDetectorElement().
|
private |
The Digitization module.
Definition at line 172 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 172 of file TGeoDetectorElement.hpp
Referenced by digitizationModule().
|
private |
Identifier of the detector element.
Definition at line 164 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 164 of file TGeoDetectorElement.hpp
Referenced by identifier().
|
private |
Normal vector to the detector element.
Definition at line 162 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 162 of file TGeoDetectorElement.hpp
|
private |
Corresponding Surface.
Definition at line 170 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 170 of file TGeoDetectorElement.hpp
Referenced by surface().
|
private |
Thickness of this detector element.
Definition at line 168 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 168 of file TGeoDetectorElement.hpp
Referenced by thickness().
|
private |
Transformation of the detector element.
Definition at line 158 of file TGeoDetectorElement.hpp.
View newest version in sPHENIX GitHub at line 158 of file TGeoDetectorElement.hpp
Referenced by transform().