29 #ifndef _ireFramework_h
30 #define _ireFramework_h
74 static bool NewPythonThread;
88 enum IRE_STATES { IRE_NOT_CONSTRUCTED, IRE_INITIALIZED, IRE_LAUNCHED,
89 IRE_ACTIVE, IRE_FINISHED };
92 static IRE_STATES IRE_State;
94 static void *IreThreadState;
96 void InitShellInstance(
void);
98 void FinalizeShellInstance(
void);
99 void LaunchIREShellInstance(
const char * startup,
bool newPythonThread,
bool useIPython,
102 void JoinIREShellInstance(
double timeout);
115 FinalizeShellInstance();
133 static inline void InitShell(
void) throw(std::runtime_error) {
134 Instance()->InitShellInstance();
144 Instance()->FinalizeShellInstance();
184 static inline void LaunchIREShell(
const char *startup =
"",
bool newPythonThread =
false,
bool useIPython =
false,
185 bool useStreambuf =
true) throw(std::runtime_error) {
186 Instance()->LaunchIREShellInstance(startup, newPythonThread, useIPython, useStreambuf);
197 LaunchIREShell(startup,
false,
false,
true);
214 LaunchIREShell(startup,
false,
true,
false);
226 Instance()->JoinIREShellInstance(timeout);
232 static bool IsStarting();
237 static bool IsActive();
240 static bool IsFinished();
244 static void SetActiveFlag(
bool flag);
248 static bool IsInitialized();
255 static void UnblockThreads();
258 static void BlockThreads();
261 static void PrintLog(
const char * str,
int len);
264 #endif // _ireFramework_h
#define CISST_EXPORT
Definition: cmnExportMacros.h:50
static void * RunIRE_wxPython(const char *startup)
Definition: ireFramework.h:195
~ireFramework()
Definition: ireFramework.h:114
static void InitShell(void)
Definition: ireFramework.h:133
#define CMN_LOG_INIT_ERROR
Definition: cmnLogger.h:162
static void * RunIRE_IPython(const char *startup)
Definition: ireFramework.h:212
ireFramework()
Definition: ireFramework.h:108
Declaration of cmnLogger amd macros for human readable logging.
static void JoinIREShell(double timeout)
Definition: ireFramework.h:225
Macros to export the symbols of cisstInteractive (in a Dll).
static void LaunchIREShell(const char *startup="", bool newPythonThread=false, bool useIPython=false, bool useStreambuf=true)
Definition: ireFramework.h:184
static void FinalizeShell(void)
Definition: ireFramework.h:143
Declaration of the template function cmnThrow.
Class to manage the preparation of Python for the Interactive Robot Environment, and for launching th...
Definition: ireFramework.h:68