54 lines
1.5 KiB
C
54 lines
1.5 KiB
C
/*--------------------------------------------------------------------------
|
|
|
|
The Status object. Holds the current status of the SICS server.
|
|
|
|
Mark Koennecke, November 1996
|
|
copyright: see implementation file
|
|
----------------------------------------------------------------------------*/
|
|
#ifndef SICSSTATUS
|
|
#define SICSSTATUS
|
|
|
|
typedef enum {
|
|
eEager,
|
|
eUserWait,
|
|
eCounting,
|
|
eOutOfBeam,
|
|
ePaused,
|
|
eDriving,
|
|
eRunning,
|
|
eScanning,
|
|
eWriting,
|
|
eBatch,
|
|
eHalted,
|
|
eDead,
|
|
eInput,
|
|
eCountDrive,
|
|
eWorking
|
|
} Status;
|
|
|
|
/* for status display */
|
|
void SetStatus(Status eNew);
|
|
int SetStatusFromText(char *text);
|
|
void KillStatus(void *pData);
|
|
/**
|
|
* set a status and disallow any further changes to the status. This serves
|
|
* in order to prevent massive message flows to the client from status
|
|
* changes while processing synchronisation files
|
|
*/
|
|
void SetStatusFixed(Status eNew);
|
|
/**
|
|
* clear a fixed status again, status will be updated again.
|
|
*/
|
|
void ClearFixedStatus(Status eNew);
|
|
|
|
Status GetStatus(void);
|
|
void GetStatusText(char *buf, int iBufLen);
|
|
|
|
|
|
int UserStatus(SConnection *pCon, SicsInterp *pSics, void *pData,
|
|
int argc, char *argv[]);
|
|
int ResetStatus(SConnection *pCon, SicsInterp *pSics, void *pData,
|
|
int argc, char *argv[]);
|
|
|
|
#endif
|