home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * DEFS.H
- *
- */
-
- #include <exec/types.h>
- #include <exec/nodes.h>
- #include <exec/ports.h>
- #include <exec/memory.h>
- #include <exec/libraries.h>
- #include <exec/execbase.h>
- #include <exec/semaphores.h>
- #include <devices/timer.h>
- #include <clib/alib_protos.h>
- #include <clib/exec_protos.h>
- #define IN_LIBRARY
- #include "fifo.h"
- #include <string.h>
-
- #define LibCall __geta4 __stkargs
- #define Prototype extern
-
- typedef unsigned char ubyte;
- typedef unsigned short uword;
- typedef unsigned long ulong;
- typedef struct MsgPort MsgPort;
- typedef struct Message Message;
- typedef struct MinNode Node;
- typedef struct MinList List;
- typedef struct List MaxList;
- typedef struct Node MaxNode;
- typedef struct Library Library;
- typedef struct ExecBase ExecBase;
- typedef struct timerequest Iot;
- typedef struct SignalSemaphore SignalSemaphore;
-
- #define FIFOF_CLOSEOF 0x00010000
- #define FIFOF_RDNORM 0x00020000
- #define FIFOF_WRNORM 0x00040000
-
- typedef struct Fifo {
- MaxNode fi_Node;
- List fi_HanList;
- List fi_WrNotify;
- List fi_RdNotify;
- uword fi_RRefs;
- uword fi_WRefs;
- uword fi_ORefs;
- ubyte fi_Lock; /* non-normal fifo's */
- ubyte fi_Reserved;
- long fi_RIdx;
- long fi_WIdx;
- long fi_Flags;
- SignalSemaphore fi_SigSem; /* normal fifo's */
- long fi_BufSize;
- long fi_BufMask;
- char fi_Buf[4];
- } Fifo;
-
- typedef struct FHan {
- Node fh_Node;
- Fifo *fh_Fifo;
- long fh_Flags;
- MsgPort fh_Port;
- Message fh_Msg;
- long fh_RIdx;
- } FHan;
-
- extern const char LibName[];
- extern const char LibId[];
- extern List FifoList;
- extern ExecBase *SysBase;
-
- #include "fifolib-protos.h"
-