13 #ifndef SST_CORE_MODEL_ELEMENT_PYTHON_H
14 #define SST_CORE_MODEL_ELEMENT_PYTHON_H
18 #include "sst/core/eli/elementinfo.h"
22 typedef void* (*genPythonModuleFunction)(void);
37 std::string module_name;
67 module_name(module_name),
72 if ( filename ==
"" ) {
87 virtual void* load(
void* parent_module);
90 std::vector<SSTElementPythonModuleCode*> sub_modules;
137 std::string pylibrary;
138 std::string sstlibrary;
139 char* primary_module;
141 std::vector<std::pair<std::string,char*> > sub_modules;
150 SST_ELI_DECLARE_DEFAULT_INFO_EXTERN()
151 SST_ELI_DECLARE_CTOR_EXTERN(
const std::string&)
164 virtual void* load();
188 #define SST_ELI_REGISTER_PYTHON_MODULE(cls,lib,version) \
189 SST_ELI_REGISTER_DERIVED(SST::SSTElementPythonModule,cls,lib,lib,ELI_FORWARD_AS_ONE(version),"Python module " #cls)
191 #endif // SST_CORE_MODEL_ELEMENT_PYTHON_H
std::string getFullModuleName()
Get the full name of the module.
Definition: element_python.cc:141
SSTElementPythonModuleCode * createPrimaryModule()
Create and empty top level python module (i.e.
Definition: element_python.cc:205
SSTElementPythonModuleCode * addSubModule(const std::string &module_name, char *code, const std::string &filename)
Add a submodule to the module.
Definition: element_python.cc:102
Class to represent the code that needs to be added to create the python module struture for the libra...
Definition: element_python.h:28
Base class for python modules in element libraries.
Definition: element_python.h:133