#include <ckdll.h>
Public Member Functions | |
CkCppInterpreter (const char *cppCode, const char *inclPath=0) | |
int | valid (void) const |
Return true if the compilation was a success. | |
const char * | getLibraryName (void) const |
Get the name of the compiled library (e.g., to copy it somewhere). | |
void * | lookup (const char *symbolName) |
Return a function pointer you can cast to the appropriate type to call the interpreted code. | |
~CkCppInterpreter () | |
Remove "cppCode" from the program. | |
Private Attributes | |
char | libraryFile [256] |
CkDll * | library |
The string passed in will be written to a file, compiled into a shared library, and then linked into the running program.
Definition at line 49 of file ckdll.h.
CkCppInterpreter::CkCppInterpreter | ( | const char * | cppCode, | |
const char * | inclPath = 0 | |||
) |
fileExists(libraryFile)) {
fileExists(libraryFile)) {
Definition at line 108 of file ckdll.C.
References CkSystem(), CmiMyPe(), CmiPrintf(), CrnRand(), deleteFile(), CkDll::extension, library, and libraryFile.
CkCppInterpreter::~CkCppInterpreter | ( | ) |
Remove "cppCode" from the program.
This invalidates any function pointers created with lookup
Definition at line 165 of file ckdll.C.
References deleteFile(), library, and libraryFile.
int CkCppInterpreter::valid | ( | void | ) | const [inline] |
const char* CkCppInterpreter::getLibraryName | ( | void | ) | const [inline] |
Get the name of the compiled library (e.g., to copy it somewhere).
Definition at line 60 of file ckdll.h.
References libraryFile.
void* CkCppInterpreter::lookup | ( | const char * | symbolName | ) | [inline] |
Return a function pointer you can cast to the appropriate type to call the interpreted code.
Definition at line 64 of file ckdll.h.
References library, and CkDll::lookup().
char CkCppInterpreter::libraryFile[256] [private] |
Definition at line 50 of file ckdll.h.
Referenced by CkCppInterpreter(), getLibraryName(), and ~CkCppInterpreter().
CkDll* CkCppInterpreter::library [private] |
Definition at line 51 of file ckdll.h.
Referenced by CkCppInterpreter(), lookup(), valid(), and ~CkCppInterpreter().