alsa.audio: move handling of XRUN when writting to the slave task
[AROS.git] / workbench / devs / diskimage / include / amigaos / xpk / xpksub.h
blobd8fd37e453a94b347d658b4472a8fe1afa488a53
1 #ifndef XPK_XPKSUB_H
2 #define XPK_XPKSUB_H
4 /*
5 ** $VER: xpk/xpksub.h 4.10 (05.04.97) by SDI
6 **
7 ** (C) Copyright 1991-1996 by
8 ** Urban Dominik Mueller, Bryan Ford,
9 ** Christian Schneider, Christian von Roques,
10 ** Dirk Stöcker
11 ** All Rights Reserved
14 #ifndef XPK_XPK_H
15 #include <xpk/xpk.h>
16 #endif
18 /**************************************************************************
20 * The XpkInfo structure
24 /* Sublibs return this structure to xpkmaster when asked nicely
25 * This is version 1 of XpkInfo. It's not #define'd because we don't want
26 * it changing automatically with recompiles - you've got to actually update
27 * your code when it changes. */
28 struct XpkInfo {
29 UWORD xi_XpkInfoVersion ; /* Version number of this structure */
30 UWORD xi_LibVersion ; /* The version of this sublibrary */
31 UWORD xi_MasterVersion ; /* The required master lib version */
32 UWORD xi_ModesVersion ; /* Version number of mode descriptors */
33 STRPTR xi_Name ; /* Brief name of the packer, 20 char max */
34 STRPTR xi_LongName ; /* Full name of the packer 30 char max */
35 STRPTR xi_Description ; /* Short packer desc., 70 char max */
36 ULONG xi_ID ; /* ID the packer goes by (XPK format) */
37 ULONG xi_Flags ; /* Defined below */
38 ULONG xi_MaxPkInChunk ; /* Max input chunk size for packing */
39 ULONG xi_MinPkInChunk ; /* Min input chunk size for packing */
40 ULONG xi_DefPkInChunk ; /* Default packing chunk size */
41 STRPTR xi_PackMsg ; /* Packing message, present tense */
42 STRPTR xi_UnpackMsg ; /* Unpacking message, present tense */
43 STRPTR xi_PackedMsg ; /* Packing message, past tense */
44 STRPTR xi_UnpackedMsg ; /* Unpacking message, past tense */
45 UWORD xi_DefMode ; /* Default mode number */
46 UWORD xi_Pad ; /* for future use */
47 struct XpkMode *xi_ModeDesc; /* List of individual descriptors */
48 ULONG xi_Reserved[6] ; /* Future expansion - set to zero */
51 /* defines for Flags: see xpk.h, XPKIF_xxxxx */
53 /**************************************************************************
55 * The XpkSubParams structure
59 struct XpkSubParams {
60 APTR xsp_InBuf ; /* The input data */
61 ULONG xsp_InLen ; /* The number of bytes to pack */
62 APTR xsp_OutBuf ; /* The output buffer */
63 ULONG xsp_OutBufLen ; /* The length of the output buf */
64 ULONG xsp_OutLen ; /* Number of bytes written */
65 ULONG xsp_Flags ; /* Flags for master/sub comm. */
66 ULONG xsp_Number ; /* The number of this chunk */
67 ULONG xsp_Mode ; /* The packing mode to use */
68 STRPTR xsp_Password ; /* The password to use */
69 UWORD xsp_LibVersion ; /* SublibVersion used to pack */
70 UWORD xsp_Pad ; /* Reserved; don't use */
71 ULONG xsp_Arg[3] ; /* Reserved; don't use */
72 ULONG xsp_Sub[4] ; /* Sublib private data */
76 * xsp_LibVersion is the version number of the sublibrary used to pack
77 * this chunk. It can be used to create backwards compatible sublibraries
78 * with a totally different fileformat.
81 #define XSF_STEPDOWN 1 /* May reduce pack eff. to save mem */
82 #define XSF_PREVCHUNK 2 /* Previous chunk available on unpack */
84 #endif /* XPK_XPKSUB_H */