21 #include <DD4hep/DD4hepUnits.h>
31 using namespace UnitLiterals;
33 class DD4hepDetectorElement;
43 std::tuple<std::shared_ptr<DD4hepDetectorElement>,
44 std::shared_ptr<Surface>>;
57 std::size_t convertedSurfaces = 0;
59 std::size_t convertedMaterials = 0;
61 std::vector<Experimental::ProtoBinning> binnings = {};
63 std::vector<Experimental::ProtoSupport> supports = {};
69 bool convertSensitive =
true;
71 bool convertPassive =
true;
73 bool convertMaterial =
true;
75 bool convertProxyMaterial =
true;
94 void construct(
Cache& cache,
const dd4hep::DetElement& dd4hepElement,
116 void recursiveConstruct(Cache& cache,
const dd4hep::DetElement& dd4hepElement,
125 DD4hepSensitiveSurface constructSensitiveComponents(
126 const dd4hep::DetElement& dd4hepElement,
const Options&
options)
const;
134 DD4hepPassiveSurface constructPassiveComponents(
135 const dd4hep::DetElement& dd4hepElement,
const Options&
options)
const;
145 void attachSurfaceMaterial(
const dd4hep::DetElement& dd4hepElement,