40#include <boost/python/suite/indexing/map_indexing_suite.hpp>
48 const py::object &constFactorMap,
49 const py::object &varCoeffMap)
54 if (!constFactorMap.is_none())
56 tmp = py::extract<ConstFactorMap>(constFactorMap);
59 if (!varCoeffMap.is_none())
61 tmp2 = py::extract<VarCoeffMap>(varCoeffMap);
64 return new StdMatrixKey(matType, shapeType, *exp, tmp, tmp2);
77 py::class_<ConstFactorMap>(
"ConstFactorMap")
78 .def(py::map_indexing_suite<ConstFactorMap>());
81 py::class_<VarCoeffMap>(
"VarCoeffMap")
82 .def(py::map_indexing_suite<VarCoeffMap, true>());
84 py::class_<StdMatrixKey>(
"StdMatrixKey", py::no_init)
88 (py::arg(
"matType"), py::arg(
"shapeType"), py::arg(
"exp"),
89 py::arg(
"constFactorMap") = py::object(),
90 py::arg(
"varCoeffMap") = py::object())))
92 .def(
"GetMatrixType", &StdMatrixKey::GetMatrixType)
93 .def(
"GetShapeType", &StdMatrixKey::GetShapeType)
94 .def(
"GetNcoeffs", &StdMatrixKey::GetNcoeffs)
95 .def(
"GetBasis", &StdMatrixKey::GetBasis);
#define NEKPY_WRAP_ENUM(ENUMNAME, MAPNAME)
void export_StdMatrixKey()
Export for StdMatrixKey enumeration.
StdMatrixKey * StdMatrixKey_Init(const MatrixType matType, const LibUtilities::ShapeType shapeType, const StdExpansionSharedPtr exp, const py::object &constFactorMap, const py::object &varCoeffMap)
std::shared_ptr< StdExpansion > StdExpansionSharedPtr
const char *const VarCoeffTypeMap[]
const char *const ConstFactorTypeMap[]
const char *const MatrixTypeMap[]
std::map< ConstFactorType, NekDouble > ConstFactorMap
static ConstFactorMap NullConstFactorMap
static VarCoeffMap NullVarCoeffMap
std::map< StdRegions::VarCoeffType, VarCoeffEntry > VarCoeffMap