ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
build layers of one cylinder-endcap setup from DD4hep input More...
#include <acts/blob/master/Plugins/DD4hep/include/Acts/Plugins/DD4hep/DD4hepLayerBuilder.hpp>
Classes | |
struct | Config |
Public Member Functions | |
DD4hepLayerBuilder (const Acts::DD4hepLayerBuilder::Config &config, std::unique_ptr< const Logger > logger) | |
~DD4hepLayerBuilder () override | |
Destructor. | |
const LayerVector | negativeLayers (const GeometryContext &gctx) const final |
const LayerVector | centralLayers (const GeometryContext &gctx) const final |
const LayerVector | positiveLayers (const GeometryContext &gctx) const final |
const std::string & | identification () const final |
void | setConfiguration (const Config &config) |
Config | getConfiguration () const |
get the configuration object | |
void | setLogger (std::unique_ptr< const Logger > logger) |
set logging instance | |
Public Member Functions inherited from Acts::ILayerBuilder | |
virtual | ~ILayerBuilder ()=default |
Virtual destructor. | |
Private Member Functions | |
const Logger & | logger () const |
Private access to the logger. | |
const LayerVector | endcapLayers (const GeometryContext &gctx, const std::vector< dd4hep::DetElement > &dendcapLayers, const std::string &side) const |
void | resolveSensitive (const dd4hep::DetElement &detElement, std::vector< std::shared_ptr< const Acts::Surface >> &surfaces) const |
std::shared_ptr< const Acts::Surface > | createSensitiveSurface (const dd4hep::DetElement &detElement, bool isDisc=false) const |
std::shared_ptr< const Acts::Transform3D > | convertTransform (const TGeoMatrix *tGeoTrans) const |
Private Attributes | |
Config | m_cfg |
configruation object | |
std::unique_ptr< const Logger > | m_logger |
logging instance | |
build layers of one cylinder-endcap setup from DD4hep input
This class is an implementation of the Acts::ILayerBuilder, creating the central (layers of barrel), the negative and positive layers (layers of endcaps) of one hierarchy (e.g. PixelDetector, StripDetector,...) with input from DD4hep.
Definition at line 34 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 34 of file DD4hepLayerBuilder.hpp
Acts::DD4hepLayerBuilder::DD4hepLayerBuilder | ( | const Acts::DD4hepLayerBuilder::Config & | config, |
std::unique_ptr< const Logger > | logger | ||
) |
Constructor
config | is the configuration struct |
logger | is the logging instance |
Definition at line 34 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 34 of file DD4hepLayerBuilder.cpp
References setConfiguration().
|
overridedefault |
Destructor.
|
finalvirtual |
LayerBuilder interface method
gctx | the geometry context for this build call |
Implements Acts::ILayerBuilder.
Definition at line 169 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 169 of file DD4hepLayerBuilder.cpp
References kdfinder::abs(), Acts::active, ACTS_ERROR, ACTS_VERBOSE, Acts::addCylinderLayerProtoMaterial(), Acts::UnitConstants::cm, Acts::CylinderLayer::create(), dz, Acts::ProtoLayer::envR, Acts::ProtoLayer::envZ, Acts::ActsExtension::getValue(), Acts::ActsExtension::hasValue(), Acts::ProtoLayer::maxR, Acts::ProtoLayer::maxZ, Acts::ProtoLayer::minR, Acts::ProtoLayer::minZ, readPY::pl, r, thickness, and Acts::Test::transform.
|
private |
Definition at line 320 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 320 of file DD4hepLayerBuilder.cpp
References Acts::UnitConstants::cm, Acts::TGeoPrimitivesHelpers::makeTransform(), and Acts::Test::transform.
|
private |
Private helper function to create a sensitive surface from a given detector element
detElement | the DD4hep::DetElement of sensitive surface to be created |
isDisc | in case the sensitive detector module should be translated as disc (e.g. for endcaps) this flag should be set to true |
Definition at line 298 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 298 of file DD4hepLayerBuilder.cpp
References ACTS_WARNING, Acts::UnitConstants::cm, e, Acts::Surface::getSharedPtr(), Acts::ActsExtension::getType(), and Acts::TGeoDetectorElement::surface().
|
private |
Private helper method to be called for endcap layers
gctx | the geometry context for this build call |
Definition at line 48 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 48 of file DD4hepLayerBuilder.cpp
References kdfinder::abs(), Acts::active, ACTS_ERROR, ACTS_VERBOSE, Acts::addDiscLayerProtoMaterial(), Acts::UnitConstants::cm, Acts::DiscLayer::create(), Acts::ProtoLayer::envR, Acts::ProtoLayer::envZ, Acts::ActsExtension::getValue(), Acts::ActsExtension::hasValue(), Acts::ProtoLayer::maxR, Acts::ProtoLayer::maxZ, Acts::ProtoLayer::minR, Acts::ProtoLayer::minZ, readPY::pl, boost::swap(), thickness, Acts::Test::transform, and z.
|
inline |
get the configuration object
Definition at line 171 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 171 of file DD4hepLayerBuilder.hpp
References m_cfg.
|
inlinefinalvirtual |
Name identification
Implements Acts::ILayerBuilder.
Definition at line 167 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 167 of file DD4hepLayerBuilder.hpp
References Acts::DD4hepLayerBuilder::Config::configurationName, and m_cfg.
|
inlineprivate |
Private access to the logger.
Definition at line 129 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 129 of file DD4hepLayerBuilder.hpp
References m_logger.
|
finalvirtual |
LayerBuilder interface method
gctx | the geometry context for this build call |
Implements Acts::ILayerBuilder.
Definition at line 164 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 164 of file DD4hepLayerBuilder.cpp
|
finalvirtual |
LayerBuilder interface method
gctx | the geometry context for this build call |
Implements Acts::ILayerBuilder.
Definition at line 276 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 276 of file DD4hepLayerBuilder.cpp
|
private |
Private helper function collecting all sensitive detector elements of a layer
gctx | the geometry context of this call |
detElement | the DD4hep::DetElement of the layer |
surfaces | the vector of surfaces which should be filled with the sensitive detector elements |
Definition at line 281 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 281 of file DD4hepLayerBuilder.cpp
set the configuration object
config | is the configuration struct |
Definition at line 43 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 43 of file DD4hepLayerBuilder.cpp
Referenced by DD4hepLayerBuilder().
set logging instance
|
private |
configruation object
Definition at line 123 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 123 of file DD4hepLayerBuilder.hpp
Referenced by getConfiguration(), and identification().
|
private |
logging instance
Definition at line 126 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 126 of file DD4hepLayerBuilder.hpp
Referenced by logger().