SST  9.0.0
StructuralSimulationToolkit
SST::SSTElementPythonModule Class Reference

Base class for python modules in element libraries. More...

#include <element_python.h>

Inheritance diagram for SST::SSTElementPythonModule:
SST::SSTElementPythonModuleOldELI

Public Member Functions

 SSTElementPythonModule (std::string library)
 Constructor for SSTElementPythonModule. Must be called by derived class. More...
 
void addPrimaryModule (char *file)
 
void addSubModule (std::string name, char *file)
 
virtual void * load ()
 
SSTElementPythonModuleCodecreatePrimaryModule (char *code=NULL, std::string filename="")
 Create the top level python module (i.e. More...
 

Protected Attributes

std::string library
 
std::string pylibrary
 
std::string sstlibrary
 
char * primary_module
 
std::vector< std::pair
< std::string, char * > > 
sub_modules
 
SSTElementPythonModuleCodeprimary_code_module
 

Detailed Description

Base class for python modules in element libraries.

Element libraries can include a class derived from this class and create a python module hierarchy.

Constructor & Destructor Documentation

SST::SSTElementPythonModule::SSTElementPythonModule ( std::string  library)

Constructor for SSTElementPythonModule. Must be called by derived class.

Parameters
libraryname of the element library the module is part of. Primary module name will be sst.library and submodules under this can also be created.

Member Function Documentation

SSTElementPythonModuleCode * SST::SSTElementPythonModule::createPrimaryModule ( char *  code = NULL,
std::string  filename = "" 
)

Create the top level python module (i.e.

the one named sst.library) Python files will need to be turned into a char array (code parameter). One way to do this is to use the following in your Makefile:

%.inc: %.py 
///         od -v -t x1 < $< | sed -e 's/^[^ ]*[ ]*//g' -e '/^\s*$$/d' -e 's/\([0-9a-f]*\)[ $$]*/0x\1,/g' > $@ 
Parameters
codecode to be compiled
filenamefilname used when reporting errors

References SST::Output::fatal(), and SST::Simulation::getSimulationOutput().


The documentation for this class was generated from the following files: