25#include <pybind11/complex.h>
26#include <pybind11/pybind11.h>
29void register_field(py::module &m,
const char *class_name) {
30 using namespace shamrock::solvergraph;
32 py::class_<Field<T>,
IEdge>(m, class_name)
36 return self.get_buf(id_patch);
38 py::return_value_policy::reference)
39 .def(
"__repr__", [=](
Field<T> &self) {
40 return shambase::format(
41 "{}(label={}, tex_symbol={}, nvar={})",
44 self.get_tex_symbol(),
51 using namespace shamrock::solvergraph;
53 py::class_<IEdge>(m,
"IEdge")
54 .def(
"get_label", &IEdge::get_label)
55 .def(
"get_tex_symbol", &IEdge::get_tex_symbol);
57 register_field<f64>(m,
"Field_f64");
58 register_field<f64_3>(m,
"Field_f64_3");
Header file describing a Node Instance.
std::uint64_t u64
64 bit unsigned integer
A buffer allocated in USM (Unified Shared Memory)
Pybind11 include and definitions.
#define Register_pymod(placeholdername)
Register a python module init function using static initialisation.