#include <si_sha/lase.h>
Public Attributes | |
sc_automationDeviceMgr | dmgr |
sc_string | basePath |
JSRuntime * | jsrt |
JSContext * | jscx |
JSObject * | glob |
sc_scriptRequestPool | pool |
sc_scriptRequestPtrhQueue | reqs |
pthread_t | svcThread |
int | ctlFdC |
int | ctlFdS |
se_laseState | state |
pthread_mutex_t | mux |
The LASE class is the center of the automation scripting environment. It holds the JavaScript runtime, context, and global objects, the device manager for name and type mapping and maintains the thread that runs the JavaScript engine, and the script queue that feeds it.
The LASE object also initializes the system by reading the 'bridges' table in the database, and creating instances of any bridges it finds. It also installs a number of helper function into the global JavaScript namespace:
Base path of lase data
int sc_lase::ctlFdC |
Control socket.
int sc_lase::ctlFdS |
Control socket (svcThread side).
Device manager
JSObject* sc_lase::glob |
JavaScript global object
JSContext* sc_lase::jscx |
JavaScript context
JSRuntime* sc_lase::jsrt |
JavaScript runtime
pthread_mutex_t sc_lase::mux |
Protects request queue, etc.
Pool of script requests for constant time allocation/release
sc_scriptRequestPtrhQueue sc_lase::reqs |
Queue (FIFO) of outstanding script requests
Start/stop state of LASE.
pthread_t sc_lase::svcThread |
Service thread (executes all script requests).