Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Core/include/Acts/Geometry/KDTreeTrackingGeometryBuilder.hpp>
Classes | |
struct | Cache |
Private construction cache. More... | |
struct | Config |
Nested Configuration for this TrackingGeometryBuilder. More... | |
Public Types | |
using | SurfaceKDT = KDTree< 2u, std::shared_ptr< Surface >, ActsScalar, std::array, 100 > |
Public Member Functions | |
KDTreeTrackingGeometryBuilder (const Config &cfg, std::unique_ptr< const Logger > logger=getDefaultLogger("KDTreeTrackingGeometryBuilder", Logging::INFO)) | |
std::unique_ptr< const TrackingGeometry > | trackingGeometry (const GeometryContext &gctx) const final |
Public Member Functions inherited from Acts::ITrackingGeometryBuilder | |
virtual | ~ITrackingGeometryBuilder ()=default |
Virtual destructor. | |
Private Member Functions | |
const Logger & | logger () const |
Private access method to the logger. | |
std::shared_ptr< TrackingVolume > | translateVolume (Cache &cCache, const GeometryContext &gctx, const SurfaceKDT &kdt, const ProtoVolume &ptVolume, const std::string &indent="") const |
std::shared_ptr< const Layer > | translateLayer (Cache &cCache, const GeometryContext &gctx, const SurfaceKDT &kdt, const ProtoVolume &plVolume, const std::string &indent="") const |
Private Attributes | |
Config | m_cfg |
Configuration member. | |
std::unique_ptr< const Logger > | m_logger |
the logging instance | |
A Tracking Geometry builder restricted to cylindrical geometries
It takes some helper tools and a vector of surface objects, together with a ProtoDetector description that is used to query a KDTree for contained surfaces in structures defined by the proto volume.
Definition at line 41 of file KDTreeTrackingGeometryBuilder.hpp.
View newest version in sPHENIX GitHub at line 41 of file KDTreeTrackingGeometryBuilder.hpp
using Acts::KDTreeTrackingGeometryBuilder::SurfaceKDT = KDTree<2u, std::shared_ptr<Surface>, ActsScalar, std::array, 100> |
Definition at line 61 of file KDTreeTrackingGeometryBuilder.hpp.
View newest version in sPHENIX GitHub at line 61 of file KDTreeTrackingGeometryBuilder.hpp
Acts::KDTreeTrackingGeometryBuilder::KDTreeTrackingGeometryBuilder | ( | const Config & | cfg, |
std::unique_ptr< const Logger > | logger = getDefaultLogger("KDTreeTrackingGeometryBuilder", Logging::INFO) |
||
) |
Constructor
[in] | cfg | is the configuration struct for this builder |
[in] | logger | logging instance |
Definition at line 38 of file KDTreeTrackingGeometryBuilder.cpp.
View newest version in sPHENIX GitHub at line 38 of file KDTreeTrackingGeometryBuilder.cpp
References Acts::ProtoDetector::harmonize(), m_cfg, and Acts::KDTreeTrackingGeometryBuilder::Config::protoDetector.
|
inlineprivate |
Private access method to the logger.
Definition at line 85 of file KDTreeTrackingGeometryBuilder.hpp.
View newest version in sPHENIX GitHub at line 85 of file KDTreeTrackingGeometryBuilder.hpp
References m_logger.
|
finalvirtual |
TrackingGeometry Interface method
gctx | geometry context of that building call |
Implements Acts::ITrackingGeometryBuilder.
Definition at line 46 of file KDTreeTrackingGeometryBuilder.cpp.
View newest version in sPHENIX GitHub at line 46 of file KDTreeTrackingGeometryBuilder.cpp
References ACTS_INFO, Acts::binR, Acts::binZ, m_cfg(), testing::internal::move(), physmon_simulation::s, Acts::KDTreeTrackingGeometryBuilder::Cache::surfaceCounter, and physmon_ckf_tracking::u.
|
private |
Translate a layer volume
cCache | is a cache used to extract the built detector elements |
gctx | is the current geometry context at building |
kdt | is the pre-filled kdt tree for the surface query |
plVolume | the proto volume representation a layer to be translated |
indent | is a screen output indentation |
Definition at line 152 of file KDTreeTrackingGeometryBuilder.cpp.
View newest version in sPHENIX GitHub at line 152 of file KDTreeTrackingGeometryBuilder.cpp
References ACTS_DEBUG, Acts::ACTS_VERBOSE(), Acts::binR, Acts::binZ, Acts::DiscLayer::create(), Acts::CylinderLayer::create(), Acts::ProtoLayer::envelope, Acts::Extent::envelope(), Acts::equidistant, Acts::ProtoVolume::extent, Acts::ProtoVolume::internal, m_cfg(), Acts::ProtoVolume::name, Acts::Extent::range(), Acts::KDTree< Dims, Type, Scalar, Vector, LeafSize >::rangeSearchWithKey(), physmon_simulation::s, writeMapConfig::surface, Acts::KDTreeTrackingGeometryBuilder::Cache::surfaceCounter, Acts::RangeXD< Dims, Type, Vector >::toString(), Acts::Test::transform, and physmon_ckf_tracking::u.
|
private |
Translate a proto tracking volume into a Acts::TrackingVolume
cCache | is a cache used to extract the built detector elements |
gctx | is the current geometry context at building |
kdt | is the pre-filled kdt tree for the surface query |
ptVolume | the proto volume to be translated |
indent | is a screen output indentation |
Definition at line 79 of file KDTreeTrackingGeometryBuilder.cpp.
View newest version in sPHENIX GitHub at line 79 of file KDTreeTrackingGeometryBuilder.cpp
References ACTS_DEBUG, Acts::ACTS_VERBOSE(), ACTS_WARNING, Acts::binR, Acts::binZ, Acts::ProtoVolume::container, Acts::ProtoVolume::extent, m_cfg(), Acts::ProtoVolume::name, and Acts::Extent::range().
|
private |
Configuration member.
Definition at line 82 of file KDTreeTrackingGeometryBuilder.hpp.
View newest version in sPHENIX GitHub at line 82 of file KDTreeTrackingGeometryBuilder.hpp
Referenced by KDTreeTrackingGeometryBuilder().
|
private |
the logging instance
Definition at line 88 of file KDTreeTrackingGeometryBuilder.hpp.
View newest version in sPHENIX GitHub at line 88 of file KDTreeTrackingGeometryBuilder.hpp
Referenced by logger().