/* **************************************************************************** * HEADER * * $Workfile: tosv.h $ * Document no: @(#) 510/OSE18-1 $Revision: 1.1.2.1 $ * $Revision: 1.1.2.1 $ * $Author: save $ * $Date: 2007/10/12 14:47:03 $ * * Copyright (C) 1997 by ENEA OSE SYSTEMS AB. All rights reserved. * **************************************************************************** CONTENTS -------- 1 Description 2 History of development 3 Include files 4 Types 5 Function prototypes **************************************************************************** */ #ifndef _TOSV_H #define _TOSV_H /* **************************************************************************** * 1 DESCRIPTION. **************************************************************************** * * Specification of the time-out server's (TOSV) application programs * interface (API). */ /* **************************************************************************** * 2 HISTORY OF DEVELOPMENT. * * $Log: tosv.h,v $ * Revision 1.1.2.1 2007/10/12 14:47:03 save * Added the Lisa (spc200c) Platform * * Revision 1.2 2005/10/18 09:10:35 save * deamon * * Revision 1.1 2005/03/31 14:57:00 antunes * Adding OSE file for RTAI features * * Revision 1.1.1.1 2004/04/09 07:40:32 fleury * import from FLIP rel-2-3-9 * * Revision 1.2 2003/08/28 15:52:13 antunes * OSE 4.5.1 * * * Rev 1.3 03/10/99 13:28:06 olli * * Rev 1.2 02/27/99 01:11:50 olli * * Rev 1.1 07/08/97 14:17:08 olli * New implementation with trap interface and signal proxy. * * Rev 1.0 12/16/96 20:50:28 lob * Initial revision. * * Rev 1.4 12/16/96 19:36:36 lob * * Rev 1.3 05/03/95 15:24:14 lob * * Rev 1.0 04/18/95 10:29:52 lob * Initial revision. * * */ /* **************************************************************************** * 3 INCLUDE FILES. **************************************************************************** */ #include "ose.h" #include "osetypes.h" #ifdef __cplusplus extern "C" { #endif /* **************************************************************************** * 4 TYPES. **************************************************************************** */ struct TosvInternal; /* Internal TOSV structure. */ /* *=========================================================================== * CANCEL_INFO *=========================================================================== * Description: Contains vital information for identification of correct time- * out request at cancellation. * * Parameters: sigNo Timeout signal number (bits 0-31). * sigNo2 Timeout signal number (bits 32-63). * instance Unique instance number for time-out request. * pointer Direct access pointer to time-out request. */ typedef struct { SIGSELECT sigNo; SIGSELECT sigNo2; U32 instance; struct TosvInternal * pointer; } CANCEL_INFO; /* **************************************************************************** * 5 FUNCTION PROTOTYPES. **************************************************************************** */ #ifdef OSEAPI void initTosvPublic(void); void initTosvPrivate(void); #endif /* *=========================================================================== * requestTmo() *=========================================================================== * * Description: Request a time-out with application specified signal. * * Parameters: cancelInfo Identification of time-out for cancellation. * timeOut Time-out in milliseconds. * tmoSig User supplied signal to return at time-out. * * Returns: Nothing. */ void requestTmo(CANCEL_INFO *cancelInfo, OSTIME timeOut, union SIGNAL **tmoSig, PROCESS process); /* *=========================================================================== * fRequestTmo() *=========================================================================== * * Description: Request a time-out with TOSV default signal. * * Parameters: cancelInfo Identification of time-out for cancellation. * timeOut Time-out time in milliseconds. * client Client process identifier. Must be equal to * current_process() of caller. * tmoSigNo Signal number for default signal. * * Returns: Nothing. */ void fRequestTmo(CANCEL_INFO *cancelInfo, OSTIME timeOut, PROCESS pid, SIGSELECT tmoSigNo); /* *=========================================================================== * cancelTmo() *=========================================================================== * * Description: Cancel (normal or fast) time-out request and return time-out * signal. * * Parameters: cancelInfo Identification of time-out to cancel. * * Returns: Signal specified in requestTmo call or default signal (with * user specified signo) if fRequestTmo was used. */ union SIGNAL *cancelTmo(CANCEL_INFO *cancelInfo); /* *=========================================================================== * fCancelTmo() *=========================================================================== * * Description: Cancel (normal or fast) time-out request and dispose of * (free) time-out signal. * * Parameters: cancelInfo Identification of time-out to cancel. * * Returns: Nothing. */ void fCancelTmo(CANCEL_INFO *cancelInfo); /* *=========================================================================== * resetTmo() *=========================================================================== * * Description: Restart the specified (normal or fast) time-out. * NOTE: an expired fast time-out will be transformed into a * normal time-out. * * Parameters: cancelInfo Identification of time-out to reset. * timeOut New time-out in milliseconds. * * Returns: Nothing. */ void resetTmo(CANCEL_INFO *cancelInfo, OSTIME timeOut); #ifdef __cplusplus } #endif #endif /* #ifndef _TOSV_H */ /* *=========================================================================== * END OF FILE *=========================================================================== */