31#include <boost/python.hpp>
33#if G4VERSION_NUMBER >= 710
36using namespace boost::python;
41namespace pyG4NistManager {
51 FindOrBuildElement, 1, 2)
61 FindOrBuildMaterial, 1, 2)
77 ConstructNewMaterial, 4, 8)
80 ConstructNewGasMaterial, 4, 5)
84using namespace pyG4NistManager;
93#if G4VERSION_NUMBER >= 710
95 class_<G4NistManager, boost::noncopyable>
96 (
"G4NistManager",
"manager class for NIST materials", no_init)
99 return_value_policy<reference_existing_object>())
100 .staticmethod(
"Instance")
105#if G4VERSION_NUMBER < 910
106 .def(
"RegisterElement", &G4NistManager::RegisterElement)
107 .def(
"DeRegisterElement", &G4NistManager::DeRegisterElement)
110 return_internal_reference<>())
111 .def(
"FindOrBuildElement", f1_FindOrBuildElement,
112 f_FindOrBuildElement()
113 [return_value_policy<reference_existing_object>()])
114 .def(
"FindOrBuildElement", f2_FindOrBuildElement,
115 f_FindOrBuildElement()
116 [return_value_policy<reference_existing_object>()])
120 .def(
"PrintElement", f1_PrintElement)
121 .def(
"PrintElement", f2_PrintElement)
124#if G4VERSION_NUMBER < 910
125 .def(
"RegisterMaterial", &G4NistManager::RegisterMaterial)
126 .def(
"DeRegisterMaterial", &G4NistManager::DeRegisterMaterial)
129 return_value_policy<reference_existing_object>())
131 f_FindOrBuildMaterial()
132 [return_value_policy<reference_existing_object>()])
133 .def(
"ConstructNewMaterial", f1_ConstructNewMaterial,
134 f_ConstructNewMaterial()
135 [return_value_policy<reference_existing_object>()])
136 .def(
"ConstructNewMaterial", f2_ConstructNewMaterial,
137 f_ConstructNewMaterial()
138 [return_value_policy<reference_existing_object>()])
139#if G4VERSION_NUMBER >= 910
141 f_ConstructNewGasMaterial()
142 [return_value_policy<reference_existing_object>()])
G4Material * ConstructNewGasMaterial(const G4String &name, const G4String &nameNist, G4double temp, G4double pres, G4bool isotopes=true)
G4double GetIsotopeMass(G4int Z, G4int N) const
G4Element * GetElement(size_t index) const
void ListMaterials(const G4String &) const
void PrintG4Material(const G4String &) const
void PrintG4Element(const G4String &) const
G4Material * FindOrBuildMaterial(const G4String &name, G4bool isotopes=true, G4bool warning=false)
G4int GetZ(const G4String &symb) const
size_t GetNumberOfElements() const
static G4NistManager * Instance()
size_t GetNumberOfMaterials() const
G4Element * FindOrBuildElement(G4int Z, G4bool isotopes=true)
G4Material * GetMaterial(size_t index) const
BOOST_PYTHON_MEMBER_FUNCTION_OVERLOADS(f_ClearWaitingStack, ClearWaitingStack, 0, 1) BOOST_PYTHON_MEMBER_FUNCTION_OVERLOADS(f_GetNWaitingTrack
void export_G4NistManager()