Files
sics/interrupt.h
koennecke 91d4af0541 - Adapted indenation to new agreed upon system
- Added support for second generation scriptcontext based counter
2009-02-13 09:00:03 +00:00

50 lines
1.3 KiB
C

/*----------------------------------------------------------------------------
SICS needs a way to interrupt server processsing. This is done
with this module.
Interrupts may come in through two ways: They may be created
internally or they may be user requested. For the last ones
the main loop will poll an additional special interrupt
port.
Mark Koennecke, December 1996
copyrights: see implementation file
-----------------------------------------------------------------------------*/
#ifndef SICSINTERRUPT
#define SICSINTERRUPT
/* Interrupt codes */
#define eContinue 0
#define eAbortOperation 1
#define eAbortScan 2
#define eAbortBatch 3
#define eHaltSystem 4
#define eFreeSystem 5
#define eEndServer 6
/* ---------------- server side functions ---------------------------------*/
void ServerStopInterrupt(void);
/*
stops interrupt processing.
*/
void SetInterrupt(int iCode);
/*
send an interrupt to everybody
*/
/*------------------------------ utility ----------------------------------*/
int Interrupt2Text(int iInterrupt, char *text, int iTextLen);
int Text2Interrupt(char *text);
/* --------------------- client side functions ----------------------------*/
int ClientSetupInterrupt(char *host, int iPort);
void ClientStopInterrupt(void);
void SendInterrupt(int iCode);
#endif