17 #ifndef __ShutterControlDioclient_h__
18 #define __ShutterControlDioclient_h__
24 #include "profileutils.h"
46 int initialize_ShutterControl() throw (AOException);
80 virtual
int start_ShutterControl();
81 virtual
int shutdown_ShutterControl();
83 virtual
int get_hw_state();
84 std::
string get_state_str();
92 virtual
int do_shutter_open(
void *adata);
93 virtual
int do_shutter_close(
void *adata);
109 std::
string remote_command(
std::
string com,
char * seqmsg = 0);
110 std::
string local_command(
std::
string com,
char *seqmsg = 0);
111 std::
string script_command(
std::
string com,
char * seqmsg = 0);
113 std::
string common_command(
std::
string com,
int calling_ctype);
125 void shutter_auto_handler(
int signum, siginfo_t *siginf,
void *ucont);
129 #endif // __ShutterControlDioclient_h__
int launchDataLogger()
Launches the data logger thread.
int dio_ch_set
The dioserver channel used for setting shutter state (open or shut)
Declarations for a generic shutter controller.
double data_log_time_length
Time duration of a shutter log file, seconds.
std::string diofifo_path
The base path of the dioserver fifos.
int power_outlet
Configuration variable, setting which power outlet to monitor.
int num_timestamps
The number of shared "images" available in the ring buffer.
int shmem_key
The key for the ring buffer shared memory.
The standalone VisAO application, does not interface with the AO Supervisor.
int dio_ch_get
The dioserver channel used for getting shutter state (open or shut)
virtual int update_statusboard()
Update the status board.
Class to manage a stack of images in shared memory.
Declarations for the standalone VisAO application.
int init_shutter_open()
Send shutter open signal for initialization, but do not log or profile this.
int * powerOutlet
The power strip outlet controlling shutter power.
sharedim_stack< char > sis
The shared memory ring buffer for timestamp storage.
VisAO software utilitites, declarations.
pthread_t logger_th
Thread which periodically logs data in the sharedim_stack data buffer.
sharedim< char > * sim
Pointer to a shared memory "image".
virtual int Run()
The application main loop, to be re-implemented in derived classes.
std::string auto_command(std::string com, char *seqmsg)
Processing for auto commands - to be overriden.
std::string getDataFileName()
Generate a unique data file name, using the standard VisAO timestamp.
void * __launch_data_logger(void *Sctrl)
Launches the data logger.
std::string save_path
Path, relative to VISAO_ROOT, where to save data.
Convenience structure for an image.
void dataLogger()
Log data at intervals.
The namespace of VisAO software.
double logger_pause
Pause time of the logger thread, seconds.
int saveInit()
Save the initialization data to disk.