Manages the extraction of LArSoft geometry information from ROOT. More...
#include <GeometryBuilder.h>
Public Types | |
using | Path_t = geo::GeoNodePath |
Identification of a single node in ROOT geometry. More... | |
template<typename GeoObj > | |
using | GeoColl_t = std::vector< GeoObj > |
Type of direct collection of geometry objects. More... | |
Public Member Functions | |
virtual | ~GeometryBuilder ()=default |
Virtual destructor. More... | |
Protected Member Functions | |
virtual Cryostats_t | doExtractCryostats (Path_t &path)=0 |
Custom implementation of extractCryostats() . More... | |
virtual AuxDets_t | doExtractAuxiliaryDetectors (Path_t &path)=0 |
Custom implementation of extractAuxiliaryDetectors() . More... | |
Cryostat information | |
using | Cryostats_t = GeoColl_t< geo::CryostatGeo > |
Collection of cryostat information objects. More... | |
Cryostats_t | extractCryostats (Path_t const &path) |
Looks for all cryostats under the specified path. More... | |
Auxiliary detector information | |
using | AuxDets_t = GeoColl_t< geo::AuxDetGeo > |
Collection of auxiliary detector information objects. More... | |
AuxDets_t | extractAuxiliaryDetectors (Path_t const &path) |
Looks for all auxiliary detectors under the specified path. More... | |
Manages the extraction of LArSoft geometry information from ROOT.
The general interface only provides abstraction for the high level objects (cryostats and auxiliary detectors). The implementations can use a finer internal structure to address single subcomponents (e.g. wire planes).
Builder objects can be configured via FHiCL parameters.
This is an abstract interface.
The builders return collections of LArSoft geometry objects dynamically allocated. In this way, in future it will be possible to easily customize those objects for detector-specific needs. Note that as of LArSoft v08_06_00
, no polymorphism is actually implemented.
Definition at line 52 of file GeometryBuilder.h.
Collection of auxiliary detector information objects.
Definition at line 102 of file GeometryBuilder.h.
Collection of cryostat information objects.
Definition at line 79 of file GeometryBuilder.h.
using geo::GeometryBuilder::GeoColl_t = std::vector<GeoObj> |
Type of direct collection of geometry objects.
Definition at line 62 of file GeometryBuilder.h.
Identification of a single node in ROOT geometry.
Definition at line 58 of file GeometryBuilder.h.
|
virtualdefault |
Virtual destructor.
|
protectedpure virtual |
Custom implementation of extractAuxiliaryDetectors()
.
Implemented in geo::GeometryBuilderStandard.
|
protectedpure virtual |
Custom implementation of extractCryostats()
.
Implemented in geo::GeometryBuilderStandard.
Looks for all auxiliary detectors under the specified path.
path | path pointing to the starting node |
The auxiliary detectors contain all their inner elements. The current node itself of the path is also considered as auxiliary detector candidate, then it is descended into.
Definition at line 113 of file GeometryBuilder.h.
|
inline |
Looks for all cryostats under the specified path.
path | path pointing to the starting node |
The cryostats contain all their inner elements. The current node itself of the path is also considered as cryostat candidate, then it is descended into.
Definition at line 90 of file GeometryBuilder.h.