home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 28 / amigaformatcd28.iso / -seriously_amiga- / archivers / xpk / xpk_source / e / inc_source / xpksub.e < prev   
Text File  |  1998-04-27  |  3KB  |  83 lines

  1. /*
  2. ** File is made of V2.5 Includes. It is no longer up-to-date!
  3. */
  4.  
  5. OPT MODULE
  6. OPT EXPORT
  7.  
  8.  
  9. MODULE 'xpk/xpk'
  10.  
  11. /**************************************************************************
  12.  *
  13.  *                     The XpkInfo structure
  14.  *
  15.  */
  16.  
  17.  
  18. -> Sublibs return this structure to xpkmaster when asked nicely
  19. -> This is version 1 of XpkInfo.  It's not #define'd because we don't want
  20. -> it changing automatically with recompiles - you've got to actually update
  21. -> your code when it changes.
  22. OBJECT xpkInfo
  23.   xpkInfoVersion  :INT  -> (unsigned) Version number of this structure
  24.   libVersion      :INT  -> (unsigned) The version of this sublibrary
  25.   masterVersion   :INT  -> (unsigned) The required master lib version
  26.   modesVersion    :INT  -> (unsigned) Version number of mode descriptors
  27.  
  28.   name        :PTR TO CHAR  -> Brief name of the packer, 20 char max
  29.   longName    :PTR TO CHAR  -> Full name of the packer   30 char max
  30.   description :PTR TO CHAR  -> Short packer desc., 70 char max
  31.  
  32.   id            :LONG -> ID the packer goes by (XPK format)
  33.   flags         :LONG -> Defined below
  34.   maxPkInChunk  :LONG -> Max input chunk size for packing
  35.   minPkInChunk  :LONG -> Min input chunk size for packing
  36.   defPkInChunk  :LONG -> Default packing chunk size
  37.  
  38.   packMsg     :PTR TO CHAR  -> Packing message, present tense
  39.   unpackMsg   :PTR TO CHAR  -> Unpacking message, present tense
  40.   packedMsg   :PTR TO CHAR  -> Packing message, past tense
  41.   unpackedMsg :PTR TO CHAR  -> Unpacking message, past tense
  42.  
  43.   defMode       :INT  -> (unsigned) Default mode number
  44.   pad           :INT  -> (unsigned) for future use
  45.  
  46.   modeDesc    :PTR TO xpkMode -> List of individual descriptors
  47.  
  48.   reserved[6] :ARRAY -> (unsigned) Future expansion - set to zero
  49.  
  50. -> LABEL xi_SIZEOF
  51.  
  52. ENDOBJECT
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59. /**************************************************************************
  60.  *
  61.  *                     The XpkSubParams structure
  62.  *
  63.  */
  64.  
  65. OBJECT xpkSubParams
  66.   inBuf     :LONG   -> (APTR) The input data
  67.   inLen     :LONG   ->        The number of bytes to pack
  68.   outBuf    :LONG        -> (APTR) The output buffer
  69.   outBufLen :LONG      ->        The length of the output buf
  70.   outLen    :LONG   ->        Number of bytes written
  71.   flags     :LONG   ->        Flags for master/sub comm.
  72.   number    :LONG   ->        The number of this chunk
  73.   mode      :LONG        ->        The packing mode to use
  74.   password  :LONG   -> (APTR) The password to use
  75.  
  76.   arg[4]  :ARRAY OF LONG  ->  Reserved; don't use
  77.   sub[4]  :ARRAY OF LONG  ->  Sublib private data
  78. ENDOBJECT
  79.  
  80. CONST XSF_STEPDOWN  = 1,  -> May reduce pack eff. to save mem
  81.       XSF_PREVCHUNK = 2   -> Previous chunk available on unpack
  82.  
  83.