home *** CD-ROM | disk | FTP | other *** search
- /* ASyncIO.h - Header File for ASyncIO.c */
-
- #ifndef ASYNCIO_H
- #define ASYNCIO_H
-
-
- /*****************************************************************************/
-
-
- #include <exec/types.h>
- #include <exec/ports.h>
- #include <dos/dos.h>
-
-
- /*****************************************************************************/
-
-
- struct AsyncFile
- {
- BPTR af_File;
- struct MsgPort *af_Handler;
- APTR af_Offset;
- LONG af_BytesLeft;
- ULONG af_BufferSize;
- APTR af_Buffers[2];
- struct StandardPacket af_Packet;
- struct MsgPort af_PacketPort;
- ULONG af_CurrentBuf;
- UBYTE af_PacketPending;
- UBYTE af_ReadMode;
- };
-
-
- /*****************************************************************************/
-
-
- #define MODE_READ 0 /* read an existing file */
- #define MODE_WRITE 1 /* create a new file, delete existing file if needed */
- #define MODE_APPEND 2 /* append to end of existing file, or create new */
-
-
- /*****************************************************************************/
-
-
- struct AsyncFile *OpenAsync(STRPTR fileName, UBYTE mode, LONG bufferSize);
- LONG CloseAsync(struct AsyncFile *file);
- LONG ReadAsync(struct AsyncFile *file, APTR buf, LONG numBytes);
- LONG ReadCharAsync(struct AsyncFile *file);
- LONG WriteAsync(struct AsyncFile *file, APTR buf, LONG numBytes);
- LONG WriteCharAsync(struct AsyncFile *file, char ch);
-
-
- /*****************************************************************************/
-
-
- #endif /* ASYNCIO_H */
-