Repository navigation
Expand file tree
/
Copy pathACEtk.python.cpp
More file actions
86 lines (70 loc) · 2.86 KB
/
Copy pathACEtk.python.cpp
File metadata and controls
86 lines (70 loc) · 2.86 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
// system includes
#include <pybind11/pybind11.h>
#include <pybind11/stl.h>
// other includes
// namespace aliases
namespace python = pybind11;
// declarations - generic ACE table
void wrapHeader( python::module&, python::module& );
void wrapHeader201( python::module&, python::module& );
void wrapData( python::module&, python::module& );
void wrapTable( python::module&, python::module& );
// declarations - xsdir components
void wrapXsdirEntry( python::module&, python::module& );
void wrapXsdir( python::module&, python::module& );
// declarations - enumerators
void wrapReferenceFrame( python::module&, python::module& );
void wrapAngularDistributionType( python::module&, python::module& );
void wrapEnergyDistributionType( python::module&, python::module& );
// declarations - block and component subpackages
void wrapContinuous( python::module&, python::module& );
void wrapPhotoatomic( python::module&, python::module& );
void wrapPhotonuclear( python::module&, python::module& );
void wrapDosimetry( python::module&, python::module& );
void wrapElectron( python::module&, python::module& );
void wrapThermal( python::module&, python::module& );
// declarations - ACE table types
void wrapContinuousEnergyTable( python::module&, python::module& );
void wrapDosimetryTable( python::module&, python::module& );
void wrapThermalScatteringTable( python::module&, python::module& );
void wrapPhotoatomicTable( python::module&, python::module& );
void wrapPhotonuclearTable( python::module&, python::module& );
/**
* @brief ACEtk python bindings
*
* The name given here (ACEtk) must be the same as the name
* set on the PROPERTIES OUTPUT_NAME in the CMakeLists.txt file.
*/
PYBIND11_MODULE( ACEtk, module ) {
python::module::import( "tools" );
// create the views submodule
python::module viewmodule = module.def_submodule(
"sequence",
"sequence - ACE sequences (internal use only)"
);
// wrap enumerators
wrapReferenceFrame( module, viewmodule );
wrapAngularDistributionType( module, viewmodule );
wrapEnergyDistributionType( module, viewmodule );
// wrap generic ACE table components
wrapHeader( module, viewmodule );
wrapHeader201( module, viewmodule );
wrapData( module, viewmodule );
wrapTable( module, viewmodule );
// wrap xsdir components
wrapXsdirEntry( module, viewmodule );
wrapXsdir( module, viewmodule );
// component and block subpackages
wrapContinuous( module, viewmodule );
wrapPhotoatomic( module, viewmodule );
wrapPhotonuclear( module, viewmodule );
wrapDosimetry( module, viewmodule );
wrapElectron( module, viewmodule );
wrapThermal( module, viewmodule );
// wrap ACE table types
wrapContinuousEnergyTable( module, viewmodule );
wrapDosimetryTable( module, viewmodule );
wrapThermalScatteringTable( module, viewmodule );
wrapPhotoatomicTable( module, viewmodule );
wrapPhotonuclearTable( module, viewmodule );
}