ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4GDMLUtility.hh
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHG4GDMLUtility.hh
1 // $Id: $
2 
11 #ifndef CORESOFTWARE_SIMULATION_G4SIMULATION_G4GDML_PHG4GDMLUTILITY_HH_
12 #define CORESOFTWARE_SIMULATION_G4SIMULATION_G4GDML_PHG4GDMLUTILITY_HH_
13 
14 #include <string>
15 
16 class G4VPhysicalVolume;
17 class PHG4GDMLConfig;
18 class PHCompositeNode;
19 
24 {
25  public:
26  virtual ~PHG4GDMLUtility() {}
27 
29  static void Dump_GDML(const std::string &filename, G4VPhysicalVolume *vol, PHCompositeNode *topNode = nullptr);
30 
32  static void Dump_G4_GDML(const std::string &filename, G4VPhysicalVolume *vol);
33 
34  static constexpr const char *get_PHG4GDML_Schema()
35  {
36  return "http://service-spi.web.cern.ch/service-spi/app/releases/GDML/schema/gdml.xsd";
37  }
38 
40  static PHG4GDMLConfig *GetOrMakeConfigNode(PHCompositeNode *topNode, bool build_new = true);
41 
42  static constexpr const char *getDSTNodeName()
43  {
44  return "G4GDML_CONFIG";
45  }
46 
47  private:
49 };
50 
51 #endif /* SIMULATION_CORESOFTWARE_SIMULATION_G4SIMULATION_G4GDML_PHG4GDMLUTILITY_HH_ */