|
|
Go to the documentation of this file.
4 #include <DD4hep/Detector.h>
5 #include <DD4hep/DetectorTools.h>
6 #include <DD4hep/Volumes.h>
7 #include <XML/DocumentHandler.h>
8 #include <XML/XMLElements.h>
16 auto oldGeoManager = gGeoManager;
17 gGeoManager =
nullptr;
18 auto resetManager = [oldGeoManager](TGeoManager*) { gGeoManager = oldGeoManager; };
19 std::unique_ptr<TGeoManager, decltype(resetManager)> sentry(oldGeoManager, resetManager);
22 bool makePayload =
false;
23 if (tagStr ==
"make-payload") {
34 edm::LogVerbatim(
"Geometry") <<
"DDDetector::ctor Setting DD4hep STD conditions to NTP";
39 if (makePayload ==
false)
50 edm::LogVerbatim(
"Geometry") <<
"DDDetector::processXML process string size " << xml.size() <<
" with max_size "
52 edm::LogVerbatim(
"Geometry") <<
"DDDetector::processXML XML string contents = " << xml.substr(0, 800);
54 dd4hep::xml::DocumentHolder
doc(dd4hep::xml::DocumentHandler().
parse(xml.c_str(), xml.length()));
56 char*
args[] = {(
char*)
doc.root().ptr(),
nullptr};
TGeoManager & manager() const
The geometry manager of this instance.
dd4hep::DetElement world() const
Reference to the top-most (world) detector element.
void process(const std::string &)
dd4hep::PartSelectionMap m_partsels
dd4hep::Volume worldVolume() const
Handle to the world volume containing everything.
std::unique_ptr< T, impl::DeviceDeleter > unique_ptr
dd4hep::SpecParRegistry m_specpars
Log< level::Info, true > LogVerbatim
cms::DDVectorsMap m_vectors
std::unordered_map< std::string, std::vector< double > > DDVectorsMap
void processXML(const std::string &)
dd4hep::Detector * m_description
dd4hep::DetElement findElement(const std::string &) const
Find DetElement as child of the top level volume by it's absolute path.
Namespace of DDCMS conversion namespace.