415 py::implicitly_convertible<std::shared_ptr<ModuleWrap<Module>>,
416 std::shared_ptr<Module>>();
417 py::implicitly_convertible<std::shared_ptr<ModuleWrap<InputModule>>,
418 std::shared_ptr<Module>>();
419 py::implicitly_convertible<std::shared_ptr<ModuleWrap<OutputModule>>,
420 std::shared_ptr<Module>>();
421 py::implicitly_convertible<std::shared_ptr<ModuleWrap<ProcessModule>>,
422 std::shared_ptr<Module>>();
429 py::class_<ModuleWrap<Module>, std::shared_ptr<ModuleWrap<Module>>,
430 boost::noncopyable>(
"Module", py::init<FieldSharedPtr>())
438 (py::arg(
"key"), py::arg(
"value") =
""))
439 .def(
"PrintConfig", &Module::PrintConfig)
440 .def(
"SetDefaults", &Module::SetDefaults)
441 .def(
"GetStringConfig", Module_GetConfig<std::string>)
442 .def(
"GetFloatConfig", Module_GetConfig<double>)
443 .def(
"GetIntConfig", Module_GetConfig<int>)
444 .def(
"GetBoolConfig", Module_GetConfig<bool>)
445 .def(
"AddConfigOption", ModuleWrap_AddConfigOption<Module>,
446 (py::arg(
"key"), py::arg(
"defValue"), py::arg(
"desc"),
447 py::arg(
"isBool") =
false))
454 .staticmethod(
"Register");
#define NEKPY_WRAP_ENUM_STRING(ENUMNAME, MAPNAME)
void Module_RegisterConfig(std::shared_ptr< Module > mod, std::string const &key, std::string const &value)
Lightweight wrapper for FieldUtils::Module::RegisterConfig.
void Module_Process(ModuleSharedPtr m)
void Module_Register(ModuleType const &modType, std::string const &modName, py::object &obj)
Lightweight wrapper for the Module factory RegisterCreatorFunction, to support the ability for Python...
const std::string ModuleTypeMap[]
Module wrapper to handle virtual function calls in Module and its subclasses as defined by the templa...