X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=server%2Fcontrol.h;h=e6230332cf5215231f77b4ff2d5ff9d8224c36f8;hb=a671f27ecb900f91bf32b8b13edb678009e319c1;hp=5b51e9518cfe462e6403a02aa636c8abfe1d5f53;hpb=e279b48f80a9386710f6170a876601257cd6144f;p=matches%2FMCTX3420.git diff --git a/server/control.h b/server/control.h index 5b51e95..e623033 100644 --- a/server/control.h +++ b/server/control.h @@ -5,6 +5,10 @@ #ifndef _CONTROL_H #define _CONTROL_H +/** + * The possible experiment control modes that the server can be in. + * At present, CONTROL_EMERGENCY largely does nothing. TODO: Fix this + */ typedef enum ControlModes { CONTROL_START, CONTROL_PAUSE, @@ -13,13 +17,19 @@ typedef enum ControlModes { CONTROL_EMERGENCY } ControlModes; -/** ID codes for all the actuators **/ +/** Invalid filename characters **/ +#define INVALID_CHARACTERS "\"*/:<>?\\|. " +/** The same as INVALID_CHARACTERS, except escaped for use in JSON strings **/ +#define INVALID_CHARACTERS_JSON "\\\"*/:<>?\\\\|. " +/** The username of a user with no authentication (DEBUG ONLY) **/ +#define NOAUTH_USERNAME "_anonymous_noauth" + 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(ControlModes mode); +//extern ControlModes Control_GetMode(); +extern const char * Control_GetModeName(); //extern bool Control_Lock(); //extern void Control_Unlock(); -extern const struct timeval* Control_GetStartTime(); +extern const struct timespec* Control_GetStartTime(); #endif