414 py::implicitly_convertible<std::shared_ptr<ModuleWrap<Module>>,
415 std::shared_ptr<Module>>();
416 py::implicitly_convertible<std::shared_ptr<ModuleWrap<InputModule>>,
417 std::shared_ptr<Module>>();
418 py::implicitly_convertible<std::shared_ptr<ModuleWrap<OutputModule>>,
419 std::shared_ptr<Module>>();
420 py::implicitly_convertible<std::shared_ptr<ModuleWrap<ProcessModule>>,
421 std::shared_ptr<Module>>();
428 py::class_<ModuleWrap<Module>, std::shared_ptr<ModuleWrap<Module>>,
429 boost::noncopyable>(
"Module", py::init<FieldSharedPtr>())
437 (py::arg(
"key"), py::arg(
"value") =
""))
438 .def(
"PrintConfig", &Module::PrintConfig)
439 .def(
"SetDefaults", &Module::SetDefaults)
440 .def(
"GetStringConfig", Module_GetConfig<std::string>)
441 .def(
"GetFloatConfig", Module_GetConfig<double>)
442 .def(
"GetIntConfig", Module_GetConfig<int>)
443 .def(
"GetBoolConfig", Module_GetConfig<bool>)
444 .def(
"AddConfigOption", ModuleWrap_AddConfigOption<Module>,
445 (py::arg(
"key"), py::arg(
"defValue"), py::arg(
"desc"),
446 py::arg(
"isBool") =
false))
453 .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...