X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=server%2Fcontrol.h;h=7b3511a62b5debf147a5f54558a0f6dc3afec216;hb=218c2d77e10b28315864990acbcf55ffe26a76e9;hp=950aeaaa16800ae0d418de7823bf0af0a57f6bac;hpb=711808f7e4376b1a39312a0b1f1aecf069cd10bf;p=matches%2FMCTX3420.git diff --git a/server/control.h b/server/control.h index 950aeaa..7b3511a 100644 --- a/server/control.h +++ b/server/control.h @@ -5,10 +5,25 @@ #ifndef _CONTROL_H #define _CONTROL_H -/** ID codes for all the actuators **/ +typedef enum ControlModes { + CONTROL_START, + CONTROL_PAUSE, + CONTROL_RESUME, + CONTROL_STOP, + CONTROL_EMERGENCY +} ControlModes; + +/** Invalid filename characters **/ +#define INVALID_CHARACTERS "\"*/:<>?\\|" +/** The same as INVALID_CHARACTERS, except escaped for use in JSON strings **/ +#define INVALID_CHARACTERS_JSON "\\\"*/:<>?\\\\|" + extern void Control_Handler(FCGIContext *context, char *params); -extern bool Control_Start(const char *experiment_name); -extern void Control_Pause(); -extern bool Control_End(); +extern const char* Control_SetMode(ControlModes desired_mode, void * arg); +extern ControlModes Control_GetMode(); +extern const char * Control_GetModeName(); +//extern bool Control_Lock(); +//extern void Control_Unlock(); +extern const struct timeval* Control_GetStartTime(); #endif