home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Misc / DC-POS24.LZX / pOS / IncPOS.lzx / pIFFParse / IFFParse.h next >
Encoding:
C/C++ Source or Header  |  1997-03-18  |  1.9 KB  |  112 lines

  1. #ifndef __INC_POS_PIFFPARSE_IFFPARSE_H
  2. #define __INC_POS_PIFFPARSE_IFFPARSE_H
  3. /*******************************************************************
  4.  Includes Release 24
  5.  (C) Copyright 1995-1997 proDAD
  6.      All Rights Reserved
  7.  
  8.  $AUT Holger Papajewski
  9.  $DAT >>IFFParse.h<<   03 Feb 1997    10:54:35 - (C) ProDAD
  10. *******************************************************************/
  11.  
  12.  
  13. #ifndef __INC_POS_PEXEC_LIST_H
  14. #include <pExec/List.h>
  15. #endif
  16. #ifndef __INC_POS_PDOS_FILES_H
  17. #include <pDOS/Files.h>
  18. #endif
  19.  
  20.  
  21.  
  22. /*----------------------------------
  23. -----------------------------------*/
  24. struct pOS_IFFHandle
  25. {
  26.   struct pOS_IOStruct    *iffh_IOStruct;
  27.   SLONG                   iffh_Depth;
  28.  
  29.   /***** SYSTEM-DATA *****/
  30.  
  31. };
  32.  
  33.  
  34.  
  35. /*----------------------------------
  36. -----------------------------------*/
  37. struct pOS_IFFLocContext
  38. {
  39.   ULONG      ifflc_Type;
  40.   ULONG      ifflc_ID;
  41.   ULONG      ifflc_Size;
  42. };
  43.  
  44.  
  45. /*----------------------------------
  46. -----------------------------------*/
  47. struct pOS_IFFStoredProp
  48. {
  49.   ULONG     sp_Size;
  50.   UBYTE    *sp_Data;
  51. };
  52.  
  53.  
  54.  
  55. #define IFF_SizeUnkown -1
  56.  
  57.  
  58. enum pOS_IFFAccessMode
  59. {
  60.   IFFACCMD_Read  = FILEHDMOD_Read,
  61.   IFFACCMD_Write = FILEHDMOD_Write,
  62. };
  63.  
  64.  
  65.  
  66. enum pOS_IFFFlags
  67. {
  68.   IFFF_StopOnExit = 0x01,
  69.   IFFF_CloseFH    = 0x02,
  70. };
  71.  
  72.  
  73.  
  74. enum pOS_IFFContentsFlags
  75. {
  76.   IFFCONF_SizeUnkown = 0x0100, /* zu schreibene Größe unbekannt */
  77. };
  78.  
  79.  
  80. enum pOS_IFFParseControlMode
  81. {
  82.   IFFPARSE_Scan = 0,
  83. };
  84.  
  85.  
  86. #ifndef MAKE_ID
  87.  #define MAKE_ID(a,b,c,d) \
  88.   ((ULONG)(a)<<24|(ULONG)(b)<<16|(ULONG)(c)<<8|(ULONG)(d))
  89. #endif
  90.  
  91.  
  92.  
  93. #define ID_FORM         MAKE_ID('F','O','R','M')
  94. #define ID_LIST         MAKE_ID('L','I','S','T')
  95. #define ID_CAT          MAKE_ID('C','A','T',' ')
  96. #define ID_PROP         MAKE_ID('P','R','O','P')
  97. #define ID_NULL         MAKE_ID(' ',' ',' ',' ')
  98.  
  99.  
  100. enum pOS_IFFErrorCodes
  101. {
  102.   IFFERR_EOF   = -1,
  103.   IFFERR_EOC   = -2,
  104.   IFFERR_NoMem = -3,
  105.   IFFERR_Read  = -4,
  106.   IFFERR_Write = -5,
  107.   IFFERR_UnkownParseMode = -6,
  108.   IFFERR_NoIFF = -7,
  109. };
  110.  
  111. #endif
  112.