Analysis Software
Documentation for sPHENIX simulation software
|
build layers of one cylinder-endcap setup from DD4hep input More...
#include <acts/blob/sPHENIX/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 |
Acts::Transform3 | convertTransform (const TGeoMatrix *tGeoTrans) const |
Private Attributes | |
Config | m_cfg |
configuration 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 41 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 41 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 52 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 52 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 235 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 235 of file DD4hepLayerBuilder.cpp
References Acts::active, ACTS_ERROR, Acts::ACTS_VERBOSE(), Acts::addCylinderLayerProtoMaterial(), Acts::binR, Acts::binZ, Acts::UnitConstants::cm, Acts::CylinderLayer::create(), dz, Acts::ProtoLayer::envelope, Acts::ProtoLayer::extent, Acts::eZ, Acts::getParams(), join(), logger(), m_cfg(), Acts::ProtoLayer::max(), Acts::ProtoLayer::min(), testing::internal::move(), physmon_track_finding_ttbar::r, Acts::Extent::range(), Acts::Range1D< Type >::set(), Acts::Experimental::detail::BlueprintHelper::sort(), writeMapConfig::surface, thickness, to_string(), Acts::ProtoLayer::toStream(), Acts::Test::transform, testSigmaEff::v, and Acts::Logging::VERBOSE.
|
private |
Definition at line 401 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 401 of file DD4hepLayerBuilder.cpp
References Acts::UnitConstants::cm, Acts::TGeoPrimitivesHelper::makeTransform(), and translation().
|
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 388 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 388 of file DD4hepLayerBuilder.cpp
References Acts::UnitConstants::cm.
|
private |
Private helper method to be called for endcap layers
gctx | the geometry context for this build call |
dendcapLayers | Vector of detector elements for the endcap layers |
side | Which endcap side it is |
Definition at line 66 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 66 of file DD4hepLayerBuilder.cpp
References Acts::active, ACTS_ERROR, Acts::ACTS_VERBOSE(), Acts::addDiscLayerProtoMaterial(), Acts::binR, Acts::binZ, Acts::UnitConstants::cm, Acts::DiscLayer::create(), Acts::ProtoLayer::envelope, Acts::ProtoLayer::extent, Acts::getParams(), join(), logger(), m_cfg(), Acts::ProtoLayer::max(), Acts::ProtoLayer::min(), testing::internal::move(), Acts::VectorHelpers::perp(), Acts::Extent::range(), Acts::Range1D< Type >::set(), Acts::Experimental::detail::BlueprintHelper::sort(), writeMapConfig::surface, swap(), thickness, to_string(), Acts::ProtoLayer::toStream(), Acts::Test::transform, testSigmaEff::v, Acts::Logging::VERBOSE, and physmon_track_finding_ttbar::z.
|
inline |
get the configuration object
Definition at line 178 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 178 of file DD4hepLayerBuilder.hpp
References m_cfg.
|
inlinefinalvirtual |
Name identification
Implements Acts::ILayerBuilder.
Definition at line 174 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 174 of file DD4hepLayerBuilder.hpp
References Acts::DD4hepLayerBuilder::Config::configurationName, and m_cfg.
|
inlineprivate |
Private access to the logger.
Definition at line 136 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 136 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 230 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 230 of file DD4hepLayerBuilder.cpp
References m_cfg().
|
finalvirtual |
LayerBuilder interface method
gctx | the geometry context for this build call |
Implements Acts::ILayerBuilder.
Definition at line 366 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 366 of file DD4hepLayerBuilder.cpp
References m_cfg().
|
private |
Private helper function collecting all sensitive detector elements of a layer
detElement | the DD4hep::DetElement of the layer |
surfaces | the vector of surfaces which should be filled with the sensitive detector elements |
Definition at line 371 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 371 of file DD4hepLayerBuilder.cpp
References gtest_filter_unittest::child.
void Acts::DD4hepLayerBuilder::setConfiguration | ( | const Config & | config | ) |
set the configuration object
config | is the configuration struct |
Definition at line 61 of file DD4hepLayerBuilder.cpp.
View newest version in sPHENIX GitHub at line 61 of file DD4hepLayerBuilder.cpp
References filter::config, and m_cfg().
Referenced by DD4hepLayerBuilder().
void Acts::DD4hepLayerBuilder::setLogger | ( | std::unique_ptr< const Logger > | logger | ) |
set logging instance
|
private |
configuration object
Definition at line 130 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 130 of file DD4hepLayerBuilder.hpp
Referenced by getConfiguration(), and identification().
|
private |
logging instance
Definition at line 133 of file DD4hepLayerBuilder.hpp.
View newest version in sPHENIX GitHub at line 133 of file DD4hepLayerBuilder.hpp
Referenced by logger().