13 #include <DD4hep/DetElement.h>
16 std::unique_ptr<const Logger> mlogger)
21 std::shared_ptr<Acts::Experimental::VolumeStructureBuilder>
23 const dd4hep::DetElement& dd4hepElement,
const Options&
options)
const {
26 if (recursiveParse(vsbConfig, dd4hepElement)) {
27 ACTS_DEBUG(
"ProtoVolume description successfully parsed.");
30 return std::make_shared<VolumeStructureBuilder>(
36 const dd4hep::DetElement& dd4hepElement)
const {
38 bool actsVolume = getParamOr<bool>(
"acts_volume", dd4hepElement,
false);
41 getParamOr<int>(
"acts_volume_type", dd4hepElement,
42 static_cast<int>(VolumeBounds::BoundsType::eOther));
44 if (bValueType < VolumeBounds::BoundsType::eOther) {
45 auto bValues = extractSeries<ActsScalar>(
46 dd4hepElement,
"acts_volume_bvalues", unitLength);
59 const dd4hep::DetElement::Children& children = dd4hepElement.children();
60 if (!children.empty()) {
62 for (
auto&
child : children) {
63 dd4hep::DetElement childDetElement =
child.second;
64 if (recursiveParse(vsbConfig, childDetElement)) {