3 #include <DD4hep/Detector.h> 4 #include <DD4hep/DetectorTools.h> 5 #include <DD4hep/Volumes.h> 6 #include <XML/DocumentHandler.h> 7 #include <XML/XMLElements.h> 15 m_description = &Detector::getInstance(tag);
27 const char*
files[] = {fileName.c_str(),
nullptr};
28 m_description->apply(name.c_str(), 2, (
char**)files);
32 edm::LogVerbatim(
"Geometry") <<
"DDDetector::processXML process string size " << xml.size() <<
" with max_size " 35 dd4hep::xml::DocumentHolder
doc(dd4hep::xml::DocumentHandler().
parse(xml.c_str(), xml.length()));
37 char*
args[] = {(
char*)doc.root().ptr(),
nullptr};
38 m_description->apply(name.c_str(), 1, (
char**)args);
42 assert(m_description);
43 return m_description->worldVolume();
49 assert(m_description);
50 return m_description->world();
54 assert(m_description);
55 return m_description->detectors();
59 assert(m_description);
60 return m_description->manager();
64 assert(m_description);
65 return dd4hep::detail::tools::findElement(*m_description, path);
void process(const std::string &)
Volume worldVolume() const
Handle to the world volume containing everything.
DetElement findElement(const std::string &) const
Find DetElement as child of the top level volume by it's absolute path.
PlacedVolume worldPlacement() const
Access to the physical volume of the world detector element.
TGeoManager & manager() const
The geometry manager of this instance.
dd4hep::PlacedVolume PlacedVolume
tbb::concurrent_unordered_map< std::string, tbb::concurrent_vector< std::string >> DDPartSelectionMap
tbb::concurrent_unordered_map< std::string, tbb::concurrent_vector< double >> DDVectorsMap
Namespace of DDCMS conversion namespace.
const HandleMap & detectors() const
The map of sub-detectors.
DetElement world() const
Reference to the top-most (world) detector element.
void processXML(const std::string &)