Class Acts::Experimental::DetectorVolumeBuilder¶
-
class DetectorVolumeBuilder : public Acts::Experimental::IDetectorComponentBuilder¶
A generic detector volume builder that uses an external builder for shape and portals and an internal structure builder for volume internals.
Note
Although this helper builds only a single volume, it is to the outside presented as a DetectorComponent with shell; like this it can be transparently be used for the downstream detector construction process.
Public Functions
-
DetectorVolumeBuilder(const Config &cfg, std::unique_ptr<const Logger> logger = getDefaultLogger("DetectorVolumeBuilder", Logging::INFO))¶
Constructor with configuration arguments.
- Parameters
cfg – is the configuration struct
logger – logging instance for screen output
-
virtual DetectorComponent construct(RootDetectorVolumes &roots, const GeometryContext &gctx) const final¶
Final implementation of a volume builder that is purely defined by an internal and external structure builder.
- Parameters
roots – [in,out] the detector root volumes
gctx – The geometry context for this call
- Returns
an outgoing detector component
-
struct Config¶
Nested configuration object.
Public Members
-
bool addInternalsToRoot = false¶
Add eventual internal volume to root.
-
bool addToRoot = true¶
Add to the root volumes: the current volume.
-
std::string auxilliary = ""¶
Auxilliary information.
-
std::shared_ptr<const IExternalStructureBuilder> externalsBuilder = nullptr¶
An external builder.
-
std::shared_ptr<const IInternalStructureBuilder> internalsBuilder = nullptr¶
An internal builder.
-
std::string name = "unnamed"¶
The name of the volume to be built.
-
bool addInternalsToRoot = false¶
-
DetectorVolumeBuilder(const Config &cfg, std::unique_ptr<const Logger> logger = getDefaultLogger("DetectorVolumeBuilder", Logging::INFO))¶