5 Copyright © 1995-2001, The AROS Development Team. All rights reserved.
8 Desc: Definitions for the dos function ReadArgs().
13 # include <exec/nodes.h>
16 # include <exec/types.h>
19 /**********************************************************************
20 ******************************* CSource ******************************
21 **********************************************************************/
23 /* This structure emulates an input stream by using a buffer. */
26 /* The buffer, which contains the stream. In most cases this may be NULL,
27 in which case the current input stream is used. */
29 LONG CS_Length
; /* The length of the buffer. */
30 LONG CS_CurChr
; /* The current position in the buffer. */
33 /**********************************************************************
34 ***************************** ReadArgs() *****************************
35 **********************************************************************/
37 /* The main structure used for ReadArgs(). It contains everything needed for
38 ReadArgs() handling. Allocate this structure with AllocDosObject(). */
41 /* Embedded CSource structure (see above). If CS_Buffer of this structure
42 is != NULL, use this structure as source for parsing, otherwise use
44 struct CSource RDA_Source
;
46 IPTR RDA_DAList
; /* PRIVATE. Must be initialized to 0. */
48 /* The next two fields allow an application to supply a buffer to be parsed
49 to ReadArgs(). If either of these fields is 0, ReadArgs() allocates this
51 UBYTE
* RDA_Buffer
; /* Pointer to buffer. May be NULL. */
52 LONG RDA_BufSiz
; /* Size of the supplied buffer. May be 0. */
54 /* Additional help, if user requests it, by supplying '?' as argument. */
56 LONG RDA_Flags
; /* see below */
60 #define RDAB_STDIN 0 /* Use Input() instead of the supplied command line. */
61 #define RDAB_NOALLOC 1 /* Do not allocate more space. */
62 #define RDAB_NOPROMPT 2 /* Do not prompt for input. */
64 #define RDAF_STDIN (1L<<RDAB_STDIN)
65 #define RDAF_NOALLOC (1L<<RDAB_NOALLOC)
66 #define RDAF_NOPROMPT (1L<<RDAB_NOPROMPT)
68 /**********************************************************************
69 **************************** Miscellaneous ***************************
70 **********************************************************************/
72 /* Maximum number of items in a template. This may change in future versions.
74 #define MAX_TEMPLATE_ITEMS 100
76 /* The maximum number of arguments in an item, which allows to specify multiple
77 arguments (flag '/M'). This may change in future versions.*/
78 #define MAX_MULTIARGS 128
80 #endif /* DOS_RDARGS_H */