X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=server%2Fcontrol.h;h=7081c3feedd1fcba7078574ec9ca81f36c46bb37;hb=4d7acf83795a57a89150d27d21ac86dcb4c33804;hp=87d62fc673e4f4ef1dcc5c691b7a7d8e4599782a;hpb=7518a87e619085f9622d268dd7130726b5947dea;p=matches%2FMCTX3420.git diff --git a/server/control.h b/server/control.h index 87d62fc..7081c3f 100644 --- a/server/control.h +++ b/server/control.h @@ -5,19 +5,25 @@ #ifndef _CONTROL_H #define _CONTROL_H -/** Number of actuators **/ -#define NUMACTUATORS 2 +typedef enum ControlModes { + CONTROL_START, + CONTROL_PAUSE, + CONTROL_RESUME, + CONTROL_STOP, + CONTROL_EMERGENCY +} ControlModes; -/** List of actuator ids (should be of size NUMACTUATORS) **/ -typedef enum ActuatorId { - ACT_PRESSURE = 0, - ACT_SOLENOID1 -} ActuatorId; +/** Invalid filename characters **/ +#define INVALID_CHARACTERS "\"*/:<>?\\|. " +/** The same as INVALID_CHARACTERS, except escaped for use in JSON strings **/ +#define INVALID_CHARACTERS_JSON "\\\"*/:<>?\\\\|. " -/** Human readable names for the actuator ids **/ -extern const char * g_actuator_names[NUMACTUATORS]; - -/** ID codes for all the actuators **/ extern void Control_Handler(FCGIContext *context, char *params); +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 timespec* Control_GetStartTime(); #endif