Public Member Functions | |
VisAOIClient (int argc, char **argv) throw (AOException) | |
VisAOIClient (std::string name, const std::string &conffile) throw (AOException) | |
virtual void | dataLogger (timeval tv) |
Log data at intervals. | |
Public Member Functions inherited from VisAO::VisAOApp_base | |
VisAOApp_base () | |
Default constructor. | |
virtual | ~VisAOApp_base () |
Virtual destructor. | |
int | set_euid_called () |
Changes the user id of the process to euid_called. | |
int | set_euid_real () |
Changes the user id fo the process to the real user id. | |
int | set_RT_priority (int prio) |
Set the real-time priority of the current process. More... | |
int | get_RT_priority () |
Get the real-time priority of the current process. | |
int | set_app_name (std::string an) |
Set the application name. | |
virtual std::string | get_app_name () |
Get the application name. | |
virtual int | setup_baseApp (bool usethreads=false) |
Install fifo channels. More... | |
virtual int | setup_baseApp (bool remfifo, bool locfifo, bool scrfifo, bool autfifo, bool usethreads=false) |
Create fifo names, then installs the fifo channels. More... | |
int | setup_fifo_list (int nfifos) |
Allocate the fifo_list. More... | |
int | connect_fifo_list () |
Connect the fifo_list with exclusive locking. More... | |
int | connect_fifo_list_nolock () |
Connect the fifo_list without exclusive locking. More... | |
int | setup_sigio () |
Setup the SIGIO signal handling. More... | |
int | setup_RTsigio () |
Setup SIGIO signal handling using realtime signals. More... | |
int | check_fifo_list_RTpending () |
Check for pending reads for the fifo list while using the RT signals. | |
int | write_fifo_channel (int ch, const char *com, int comlen, std::string *resp) |
Write data to a fifo_channel, and get a response if desired. More... | |
int | write_fifo_channel (int ch, const char *com, int comlen, std::string *resp, char *sm) |
Write data to a fifo_channel, with a sequence message attached, and get a response if desired. More... | |
int | get_fifo_channel_response (std::string *resp, int ch) |
Check, and wait if neccessary, for data on a fifo channel. More... | |
int | set_wait_to (double to) |
Set the wait timeout for fifo channel responses. More... | |
double | get_wait_to () |
Get the wait timeout for fifo channel responses. More... | |
virtual int | request_control (int cmode) |
Calls request_control(cmode, 0). | |
virtual int | request_control (int cmode, bool override) |
Attempts to change the control type. More... | |
virtual std::string | __remote_command (std::string com, char *seqmsg) |
Processing for remote commands. More... | |
virtual std::string | remote_command (std::string com) |
Called by __remote_command after control state logic. More... | |
virtual std::string | remote_command (std::string com, char *seqmsg) |
virtual std::string | __local_command (std::string com, char *seqmsg) |
Processing for local commands. More... | |
virtual std::string | local_command (std::string com) |
Called by __local_command after control state logic. More... | |
virtual std::string | local_command (std::string com, char *seqmsg) |
virtual std::string | __script_command (std::string com, char *seqmsg) |
Processing for script commands - not normally overriden. More... | |
virtual std::string | script_command (std::string com) |
Called by __script_command after control state logic. More... | |
virtual std::string | script_command (std::string com, char *seqmsg) |
virtual std::string | auto_command (std::string com, char *seqmsg) |
Processing for auto commands - to be overriden. More... | |
virtual std::string | post_auto_command (std::string com, char *seqmsg=0) |
Processing for auto commands - not normally overriden. More... | |
std::string | control_mode_string () |
Convenience function to return the control type string, e.g. "REMOTE". | |
std::string | control_mode_response () |
Convenience function to return the control type response string, e.g. "A\n". | |
virtual void | error_report (int LogLevel, std::string emsg) |
Report an error. Also calls log_msg. More... | |
virtual void | log_msg (int LogLevel, std::string lmsg) |
Log a message. More... | |
VisAO::profiler * | get_profile () |
int | get_use_profiler () |
int | start_profiler () |
void * | get_statusboard_shmemptr () |
Get the status board shared memory pointer. More... | |
int | set_statusboard_shmemkey (key_t mkey) |
Set the status board shared memory key. Does nothing else. More... | |
key_t | get_statusboard_shmemkey () |
Get the status board shared memory key. More... | |
Protected Member Functions | |
void | Create (void) throw (AOException) |
int | LoadConfig () |
Load the configuration details from the file. | |
virtual void | SetupVars () |
virtual void | Run () |
virtual void | post_update_DD_var (DD_RTDBVar &var) |
void | update_loopon () |
void | init_statusboard () |
int | update_statusboard () |
Update the status board. More... | |
void | dump_statusboard () |
void | update_recon () |
Protected Member Functions inherited from VisAO::VisAOApp_base | |
int | create_statusboard (size_t sz) |
Creates and attaches to the statusboard shared memory. More... | |
std::string | getDataFileName () |
int | checkDataFileOpen () |
Protected Attributes | |
std::string | fifo_path |
The path to the fifos, relative to VISAO_ROOT. | |
VisAO::aosystem_status_board * | aosb |
VisAO::reconstructor_status_board * | rsb |
RTDBvar | var_avgwfe |
RTDBvar | var_stdwfe |
RTDBvar | var_instwfe |
int | orient_useel |
int | orient_usepa |
Protected Attributes inherited from VisAO::VisAOApp_base | |
std::string | app_name |
The name of the application. | |
double | pause_time |
Time to pause during application main loop. | |
fifo_list | fl |
The list of named-pipe fifos used for inter-process comms. | |
std::string | com_path |
The control fifo path base name. | |
std::string | com_path_remote |
The path for the remote control fifos. | |
std::string | com_path_local |
The path for the local control fifos. | |
std::string | com_path_script |
The path for the script control fifos. | |
std::string | com_path_auto |
The path for the auto control fifos. | |
double | wait_to |
The timeout for waiting on responses from FIFOs in seconds. | |
std::ostringstream | logss |
Conveninence string stream for building log messages. | |
VisAO::profiler * | profile |
std::string | profile_path |
int | use_profiler |
void * | statusboard_shmemptr |
The pointer to the shared memory block for the statusboard. | |
key_t | statusboard_shmemkey |
The key used to lookup the shared memory. | |
int | statusboard_shmemid |
The ID of the shared memory block. | |
std::ofstream | dataof |
bool | dataFileOpen |
double | dataFileOpenTime |
double | data_log_time_length |
std::string | data_save_path |
std::string | data_file_prefix |
Wollaston Remote Control | |
VisAOIClient is the interface for "control" of the Wollaston from the supervisor. | |
std::string | wollaston_process |
RTDBvar | wollaston_status |
RTDBvar | wollaston_cmode_cur |
RTDBvar | wollaston_cmode_req |
RTDBvar | wollaston_state_cur |
RTDBvar | wollaston_state_req |
int | send_wollaston_command (std::string com) |
int | update_wollaston () |
static int | WollStateReqChanged (void *pt, Variable *msgb) |
static int | WollCModeReqChanged (void *pt, Variable *msgb) |
Focus Remote Control | |
VisAOIClient is the interface for "control" of the Focus Stage from the supervisor. | |
std::string | focus_process |
RTDBvar | focus_cmode_cur |
RTDBvar | focus_cmode_req |
RTDBvar | focus_pos_cur |
RTDBvar | focus_pos_req |
RTDBvar | focus_abort_req |
RTDBvar | focus_preset_req |
RTDBvar | focus_status |
RTDBvar | focus_limsw_cur |
int | send_focus_command (std::string com) |
int | update_focus () |
static int | FocusPosReqChanged (void *pt, Variable *msgb) |
static int | FocusAbortReqChanged (void *pt, Variable *msgb) |
static int | FocusCModeReqChanged (void *pt, Variable *msgb) |
static int | FocusPresetReqChanged (void *pt, Variable *msgb) |
Gimbal Remote Control | |
VisAOIClient is the interface for control of the Gimbal from the supervisor. | |
std::string | gimbal_process |
RTDBvar | gimbal_status |
RTDBvar | gimbal_xpos_cur |
RTDBvar | gimbal_ypos_cur |
RTDBvar | gimbal_cmode_cur |
RTDBvar | gimbal_cmode_req |
RTDBvar | gimbal_center_req |
RTDBvar | gimbal_dark_req |
int | send_gimbal_command (std::string com) |
int | update_gimbal () |
static int | GimbalCModeReqChanged (void *pt, Variable *msgb) |
static int | GimbalCenterReqChanged (void *pt, Variable *msgb) |
static int | GimbalDarkReqChanged (void *pt, Variable *msgb) |
Master Remote Control | |
VisAOIClient provides a master control over VisAO for supervisor | |
RTDBvar | var_masterremote_req |
RTDBvar | ccd47_cmode_req |
RTDBvar | shutter_cmode_req |
RTDBvar | fw2_cmode_req |
RTDBvar | fw3_cmode_req |
int | setMasterRemote (int cmode) |
Change control of Gimbal, Focus, F/W2, F/W3, CCD47. | |
static int | MasterRemoteReqChanged (void *pt, Variable *msgb) |
When notified, VisAOIClient changes the control mode of the entire VisAO Camera. | |
Additional Inherited Members | |
Public Types inherited from VisAO::VisAOApp_base | |
enum | control_modes { CMODE_NONE, CMODE_REMOTE, CMODE_LOCAL, CMODE_SCRIPT, CMODE_AUTO, CMODE_max } |
The control modes. | |
Public Attributes inherited from VisAO::VisAOApp_base | |
pthread_mutex_t | my_mutex |
Mutex used by the threaded versions of the standard command handlers. | |
Static Protected Attributes inherited from VisAO::VisAOApp_base | |
static int | control_mode = VisAOApp_base::CMODE_NONE |
The current control mode. More... | |
static int | default_control_mode = -1 |
The default control mode. More... | |
Definition at line 18 of file VisAOIClient.h.
|
protectedvirtual |
Overridden versions should call this as VisAOApp_bas::update_statusboard so the basics are taken care of.
0 | on success |
-1 | on failure |
Reimplemented from VisAO::VisAOApp_base.
Definition at line 962 of file VisAOIClient.cpp.
References VisAO::VisAOApp_base::statusboard_shmemptr, and VisAO::VisAOApp_base::update_statusboard().