#include <pyInterpreter.h>
Public Types |
|
Type definitions
|
|
typedef std::vector< String > | PathStrings |
Used to encode the individual paths
appended to sys.path for dynamic loading of
modules. |
|
Static Public Member Functions |
|
Initialization
|
|
static void | initialize () |
Initialize the interpreter. |
|
static void | finalize () |
Stop the interpreter. |
|
static bool | isInitialized () |
Determine the interpreter state.
|
|
static void | setSysPath (const PathStrings &path_strings) |
Append additional search paths to
sys.path upon initialization. |
|
static const PathStrings & | getSysPath () |
Get the current paths added to
sys.path. |
|
static bool | isValid () |
static String | getStartupLog () |
Execution
|
|
static String | run (const String &s, bool &result) |
Execute a string. |
|
static String | runFile (const String &filename) throw (Exception::FileNotFound) |
Run a Python program from a file.
|
|
static bool | importModule (const String &module_name) |
Import a module. |
|
Static Protected Attributes |
|
static PathStrings | sys_path_ |
static bool | valid_ |
static String | start_log_ |
There's just one global instance of the interpreter, so all methods are static. The use of subinterpreters is not yet supported.
static void BALL::PyInterpreter::finalize | ( | ) | [static] |
Stop the interpreter.
Deallocate all memory occupied by the interpreter (by
calling PY_Finalize
.
static bool BALL::PyInterpreter::importModule | ( | const String & | module_name | ) | [static] |
Import a module.
The module with name module_name
is
imported using PyImport_ImportModule
and
initialized. When called
static void BALL::PyInterpreter::initialize | ( | ) | [static] |
Initialize the interpreter.
Initialize the interpreter (by calling
Py_Initialize
) and load the modules
sys
, site
, and BALL
.
A second call to initialize
may be used to
restart the intepreter. Upon start, the paths defined by
setSysPath are added to sys.path.
If your interpreter cannot load specific modules, add the
location of your modules here.
static bool BALL::PyInterpreter::isInitialized | ( | ) | [static] |
Determine the interpreter state.
Execute a string.
s | the string to run (may contain multiple lines with correct indentation) | |
result | bool reference which contains the result after call of function |
static String BALL::PyInterpreter::runFile | ( | const String & | filename | ) | throw (Exception::FileNotFound)
[static] |
Run a Python program from a file.
file_name | the name of the program file |