|
ACTS
Experiment-independent tracking
|
Backend adapter for building ACTS blueprints from a TGeo geometry tree. More...
#include <ActsPlugins/Root/BlueprintBuilder.hpp>
Classes | |
| struct | Config |
| Runtime configuration for the TGeo blueprint backend. More... | |
| struct | Element |
| Lightweight backend element that points to a node context. More... | |
| struct | LayerSpec |
| Optional layer configuration used during layer assembly. More... | |
| struct | NodeContext |
| Context for one node in the TGeo hierarchy. More... | |
Public Types | |
| using | AxisDefinition = TGeoAxes |
| Axis definitions used for detector element and layer surface creation. | |
| using | DetectorElement = TGeoDetectorElement |
| Concrete detector element type used by this backend. | |
| using | DetectorElementFactory |
| Factory function used to instantiate detector elements. | |
| using | DetectorElementPtr = std::shared_ptr<DetectorElement> |
| Shared pointer to the detector element type. | |
| using | ElementPredicate = std::function<bool(const Element&)> |
| Predicate used to classify geometry elements as sensitive. | |
| using | IdentifierProvider |
| Provider that maps an element to a detector element identifier. | |
Public Member Functions | |
| TGeoBlueprintBuilderBackend (const Config &cfg, const Acts::Logger &logger) | |
| Construct the backend from configuration and logger. | |
| std::vector< Element > | children (const Element &parent) const |
| Retrieve the direct children of a parent element. | |
| DetectorElementPtr | createDetectorElement (const Element &element, AxisDefinition axes) const |
| Create a detector element for a sensitive geometry element. | |
| bool | isSensitive (const Element &element) const |
| Check whether an element is considered sensitive. | |
| const Acts::Logger & | logger () const |
| Access the backend logger. | |
| std::optional< Acts::Transform3 > | lookupLayerTransform (const Element &element, const LayerSpec &layerSpec) const |
| Look up an optional transform to use for the assembled layer. | |
| std::vector< std::shared_ptr< Acts::Surface > > | makeSurfaces (std::span< const Element > sensitives, const LayerSpec &layerSpec) const |
| Build ACTS surfaces for a set of sensitive elements. | |
| std::string | nameOf (const Element &element) const |
| Retrieve the node name for an element. | |
| const TGeoNode & | nodeOf (const Element &element) const |
| Access the underlying TGeo node for an element. | |
| Element | parent (const Element &element) const |
| Retrieve the parent element of an element. | |
| std::string | pathOf (const Element &element) const |
| Compute the full geometry path of an element. | |
| TGeoHMatrix | transformOf (const Element &element) const |
| Compute the world transform of an element. | |
| Element | world () const |
| Access the world/root element of the configured TGeo tree. | |
Static Public Member Functions | |
| static DetectorElementPtr | defaultElementFactory (const TGeoDetectorElement::Identifier &identifier, const TGeoNode &tGeoNode, const TGeoMatrix &tGeoMatrix, AxisDefinition axes, double lengthScale, std::shared_ptr< const Acts::ISurfaceMaterial > material) |
| Default detector element factory implementation. | |
Static Public Attributes | |
| static constexpr std::string_view | kIdentifier = "TGeoBlueprintBuilderBackend" |
| Identifier used by the generic blueprint infrastructure. | |
Backend adapter for building ACTS blueprints from a TGeo geometry tree.
Factory function used to instantiate detector elements.
Provider that maps an element to a detector element identifier.
|
explicit |
Construct the backend from configuration and logger.
| cfg | Backend configuration. |
| logger | Logger instance used for diagnostics. |
| std::vector< Element > ActsPlugins::TGeoBlueprintBuilderBackend::children | ( | const Element & | parent | ) | const |
Retrieve the direct children of a parent element.
| parent | Parent element. |
| DetectorElementPtr ActsPlugins::TGeoBlueprintBuilderBackend::createDetectorElement | ( | const Element & | element, |
| AxisDefinition | axes ) const |
Create a detector element for a sensitive geometry element.
| element | Sensitive element to convert. |
| axes | Axis definition used to build the detector element surface. |
|
static |
Default detector element factory implementation.
| identifier | Identifier assigned to the detector element. |
| tGeoNode | Source TGeo node. |
| tGeoMatrix | Global transform matrix of the source node. |
| axes | Axis definition used to build the ACTS surface. |
| lengthScale | Scale factor converting TGeo lengths to ACTS units. |
| material | Optional surface material assigned to created surfaces. |
| bool ActsPlugins::TGeoBlueprintBuilderBackend::isSensitive | ( | const Element & | element | ) | const |
Check whether an element is considered sensitive.
| element | Element to classify. |
| const Acts::Logger & ActsPlugins::TGeoBlueprintBuilderBackend::logger | ( | ) | const |
Access the backend logger.
| std::optional< Acts::Transform3 > ActsPlugins::TGeoBlueprintBuilderBackend::lookupLayerTransform | ( | const Element & | element, |
| const LayerSpec & | layerSpec ) const |
Look up an optional transform to use for the assembled layer.
| element | Reference element for the lookup. |
| layerSpec | Optional layer assembly overrides. |
| std::vector< std::shared_ptr< Acts::Surface > > ActsPlugins::TGeoBlueprintBuilderBackend::makeSurfaces | ( | std::span< const Element > | sensitives, |
| const LayerSpec & | layerSpec ) const |
Build ACTS surfaces for a set of sensitive elements.
| sensitives | Sensitive elements that contribute surfaces. |
| layerSpec | Optional layer assembly overrides. |
| std::string ActsPlugins::TGeoBlueprintBuilderBackend::nameOf | ( | const Element & | element | ) | const |
Retrieve the node name for an element.
| element | Element whose node name is requested. |
| const TGeoNode & ActsPlugins::TGeoBlueprintBuilderBackend::nodeOf | ( | const Element & | element | ) | const |
Access the underlying TGeo node for an element.
| element | Element whose node is requested. |
Retrieve the parent element of an element.
| element | Element whose parent is requested. |
| std::string ActsPlugins::TGeoBlueprintBuilderBackend::pathOf | ( | const Element & | element | ) | const |
Compute the full geometry path of an element.
| element | Element whose path is requested. |
| TGeoHMatrix ActsPlugins::TGeoBlueprintBuilderBackend::transformOf | ( | const Element & | element | ) | const |
Compute the world transform of an element.
| element | Element whose transform is requested. |
| Element ActsPlugins::TGeoBlueprintBuilderBackend::world | ( | ) | const |
Access the world/root element of the configured TGeo tree.