50template <VisualisationStateMember function>
72template <CameraMember function>
94template <CommandLineMember function>
156 *(extraSpace->
exit) =
true;
192 : lastCommandOrProgram(
""), lastStatus(
false), log(
l)
199 extraSpace.
camera = camera;
200 extraSpace.
exit = &exit;
217 lastCommandOrProgram = file;
224 return handleErrors();
239 { lastCommandOrProgram =
program;
241 return handleErrors();
257 if (
s ==
LUA_OK){
return "LUA_OK";}
259 std::string
status = lastCommandOrProgram +
" | ";
270 status +=
"LUA_ERRSYNTAX";
279 status +=
"LUA_STATUS_UNKOWN";
290 value.readGlobal(lua, n);
307 std::string lastCommandOrProgram;
308 std::stringstream input;
309 static std::string stackTrace;
322 stackTrace += std::string(
"\n") +
lua_tostring(lua, -1);
331 std::string
msg =
"Exited with error running "+lastCommandOrProgram+
"\n";
333 jLog::ERR(jLog::ERRORCODE::LUA_ERROR,
msg) >> log;
342 static int load_sfoavLib(
lua_State * lua)
A 3D projective camera centered on a focus moving on a sphere.
Definition camera.h:30
Lua console.
Definition console.h:177
bool exitCalled() const
If sfoav.exit() has been called.
Definition console.h:300
Console(jLog::Log &l, VisualisationState *visualisationState, CommandLine *options, Camera *camera)
Construct a new Console with a jLog::Log.
Definition console.h:186
~Console()
Definition console.h:204
bool runFile(std::string file)
Attempt to run a Lua script from a file on disc.
Definition console.h:213
std::string luaStatus()
Convert Lua's status to a std::string.
Definition console.h:253
bool runString(std::string program)
Attempt to run a Lua script from std::string.
Definition console.h:236
T getGlobal(const char *n)
Definition console.h:287
bool luaIsOk()
Definition console.h:246
glm::vec< L, float, glm::qualifier::highp > vec
Definition commandLine.h:214
int(VisualisationState::* VisualisationStateMember)(lua_State *lua)
A Lua binding in VisualisationState;.
Definition console.h:40
int dispatchCamera(lua_State *lua)
Dispath to a Lua binding of Camera.
Definition console.h:73
int lua_pause(lua_State *lua)
Stop playing frames.
Definition console.h:166
int lua_exit(lua_State *lua)
Exit SFOAV.
Definition console.h:153
int lua_startRecord(lua_State *lua)
Start video recording (if not already recording).
Definition console.h:108
int lua_stopRecord(lua_State *lua)
Stop video recording (if already recording).
Definition console.h:124
int(Camera::* CameraMember)(lua_State *lua)
A Lua binding in Camera;.
Definition console.h:62
int lua_play(lua_State *lua)
Start playing frames.
Definition console.h:140
int(CommandLine::* CommandLineMember)(lua_State *lua)
A Lua binding in CommandLine;.
Definition console.h:84
int dispatchCommandLine(lua_State *lua)
Dispath to a Lua binding of CommandLine.
Definition console.h:95
int dispatchVisualisationState(lua_State *lua)
Dispath to a Lua binding of VisualisationState.
Definition console.h:51
T value
Definition commandLine.h:33
Extract command line arguments.
Definition commandLine.h:240
Argument< bool > play
Definition commandLine.h:368
Holds editable data for the visualisation state.
Definition visualisationState.h:34
bool recording
Definition visualisationState.h:131
void toggleRecord(const CommandLine &options)
Toggle recording to video.
Definition visualisationState.h:147