23 #include <Geant4/G4VPhysicalVolume.hh>
24 #include <Geant4/G4GDMLWriteStructure.hh>
35 if (topNode ==
nullptr)
42 GetOrMakeConfigNode(topNode);
47 assert(vol->GetLogicalVolume());
49 xercesc::XMLPlatformUtils::Initialize();
50 gdml_parser.
Write(filename, vol->GetLogicalVolume(), get_PHG4GDML_Schema(), 0,
true);
51 xercesc::XMLPlatformUtils::Terminate();
57 G4GDMLWriteStructure gdml_parser;
59 assert(vol->GetLogicalVolume());
61 xercesc::XMLPlatformUtils::Initialize();
62 gdml_parser.Write(filename, vol->GetLogicalVolume(), get_PHG4GDML_Schema(), 0,
true);
63 xercesc::XMLPlatformUtils::Terminate();
72 "PHCompositeNode",
"PAR"));
76 serr << __PRETTY_FUNCTION__ <<
": PAR Node missing, request aborting.";
77 cout << serr.str() << endl;
79 throw runtime_error(serr.str());
86 if (!config and build_new)
90 getDSTNodeName(),
"PHObject");
91 parNode->addNode(node);