/*--------------------------------------------------------------------------- ----------------------------------------------------------------------------*/ #ifndef ANSTO_PROTOCOL #define ANSTO_PROTOCOL #include #include static const int iNumProTags = 2; static char *pProTags[3] = { "start", "finish", NULL }; #define esStart -1 #define esFinish -2 /*--------------------- lifecycle -------------------------------------- */ int InstallProtocol(SConnection *pCon, SicsInterp *pSics, void *pData, int argc, char *argv[]); void DeleteProtocol(void *pSelf); void MakeProtocol(SicsInterp *pSics); /*--------------------- operations --------------------------------------*/ int ProtocolAction(SConnection *pCon, SicsInterp *pSics, void *pData, int argc, char *argv[]); /*--------------------- implement protocol sycamore ---------------------*/ int SCWriteSycamore(SConnection *pCon, char *pBuffer, int iOut); /*--------------------- implement protocol API -----------------------*/ char * GetProtocolName(SConnection *pCon); int GetProtocolID(SConnection *pCon); int ProtocolGet(SConnection* pCon, void* pData, char *pProName, int len); writeFunc GetProtocolWriteFunc(SConnection *pCon); /*-----------------------------------------------------------------------*/ #endif