home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / DC-POS24.LZX / pOS / IncPOS.lzx / pDOS / IOStruct.h < prev    next >
Encoding:
C/C++ Source or Header  |  1997-03-18  |  1.5 KB  |  42 lines

  1. #ifndef __INC_POS_PDOS_IOSTRUCT_H
  2. #define __INC_POS_PDOS_IOSTRUCT_H
  3. /*******************************************************************
  4.  Includes Release 24
  5.  (C) Copyright 1995-1997 proDAD
  6.      All Rights Reserved
  7.  
  8.  $AUT Holger Burkarth
  9.  $DAT >>IOStruct.h<<   23 Jan 1997    14:35:29 - (C) ProDAD
  10. *******************************************************************/
  11. #ifndef __INC_POS_PDOS_DOSTYPES_H
  12. #include <pDOS/DosTypes.h>
  13. #endif
  14.  
  15.  
  16. /*----------------------------------
  17. -----------------------------------*/
  18. struct pOS_IOStruct
  19. {
  20.   UWORD  iost_StructSize;
  21.   ULONG  iost_UserData[2];
  22.  
  23.   UBYTE  iost_Reserved[16];
  24.  
  25.   dossize_t (*iost_Read_func)   (_R_A0 struct pOS_IOStruct*,_R_A1 VOID* buf,_R_D0 dossize_t size);
  26.   dossize_t (*iost_Write_func)  (_R_A0 struct pOS_IOStruct*,_R_A1 const VOID* buf,_R_D0 dossize_t size);
  27.   dospos_t  (*iost_Seek_func)   (_R_A0 struct pOS_IOStruct*,_R_D0 dospos_t pos,_R_D1 ULONG mode);
  28.   BOOL      (*iost_Examine_func)(_R_A0 struct pOS_IOStruct*,_R_A1 struct pOS_FileInfoBlock*);
  29.   BOOL      (*iost_Flush_func)  (_R_A0 struct pOS_IOStruct*);
  30.   ULONG     (*iost_Reserved_func[8])(_R_A0 struct pOS_IOStruct*);
  31. };
  32.  
  33.  
  34. #define _IOSTREAD(io,buf,size)   ( (io)->iost_Read_func(io,buf,size) )
  35. #define _IOSTWRITE(io,buf,size)  ( (io)->iost_Write_func(io,buf,size) )
  36. #define _IOSTSEEK(io,pos,mode)   ( (io)->iost_Seek_func(io,pos,mode) )
  37. #define _IOSTEXAMINE(io,fib)     ( (io)->iost_Examine_func(io,fib) )
  38. #define _IOSTFLUSH(io)           ( (io)->iost_Flush_func(io) )
  39.  
  40.  
  41. #endif
  42.