1 #ifndef LIBRARIES_ASYNCIO_H
2 #define LIBRARIES_ASYNCIO_H
5 /*****************************************************************************/
9 #include <exec/types.h>
13 #include <exec/ports.h>
20 #ifndef DOS_DOSEXTENS_H
21 #include <dos/dosextens.h>
25 /*****************************************************************************/
28 /* This structure is public only by necessity, don't muck with it yourself, or
29 * you're looking for trouble
31 typedef struct AsyncFile
35 struct MsgPort
*af_Handler
;
40 struct StandardPacket af_Packet
;
41 struct MsgPort af_PacketPort
;
44 #ifdef ASIO_NOEXTERNALS
45 struct ExecBase
*af_SysBase
;
46 struct DosLibrary
*af_DOSBase
;
48 UBYTE af_PacketPending
;
53 ULONG af_LastBytesLeft
;
57 /*****************************************************************************/
60 typedef enum OpenModes
62 MODE_READ
, /* read an existing file */
63 MODE_WRITE
, /* create a new file, delete existing file if needed */
64 MODE_APPEND
/* append to end of existing file, or create new */
68 typedef enum SeekModes
70 MODE_START
= -1, /* relative to start of file */
71 MODE_CURRENT
, /* relative to current file position */
72 MODE_END
/* relative to end of file */
76 /*****************************************************************************/
79 #if defined(__SASC) && defined(ASIO_SHARED_LIB)
80 extern long __asiolibversion
; /* Minimum version of asyncio.library */
84 #endif /* ASYNCIO_H */