1 /* Copyright (C) 2001-2012 Artifex Software, Inc.
2    All Rights Reserved.
3 
4    This software is provided AS-IS with no warranty, either express or
5    implied.
6 
7    This software is distributed under license and may not be copied,
8    modified or distributed except as expressly authorized under the terms
9    of the license contained in the file LICENSE in this distribution.
10 
11    Refer to licensing information at http://www.artifex.com or contact
12    Artifex Software, Inc.,  7 Mt. Lassen Drive - Suite A-134, San Rafael,
13    CA  94903, U.S.A., +1(415)492-9861, for further information.
14 */
15 
16 
17 /* Parameter structure for expandable stacks of refs */
18 
19 #ifndef istkparm_INCLUDED
20 #  define istkparm_INCLUDED
21 
22 /*
23  * Define the structure for stack parameters set at initialization.
24  */
25 /*typedef struct ref_stack_params_s ref_stack_params_t;*/ /* in istack.h */
26 struct ref_stack_params_s {
27     uint bot_guard;		/* # of guard elements below bot */
28     uint top_guard;		/* # of guard elements above top */
29     uint block_size;		/* size of each block */
30     uint data_size;		/* # of data slots in each block */
31     ref guard_value;		/* t__invalid or t_operator, */
32                                 /* bottom guard value */
33     int underflow_error;	/* error code for underflow */
34     int overflow_error;		/* error code for overflow */
35     bool allow_expansion;	/* if false, don't expand */
36 };
37 #define private_st_ref_stack_params() /* in istack.c */\
38   gs_private_st_simple(st_ref_stack_params, ref_stack_params_t,\
39     "ref_stack_params_t")
40 
41 #endif /* istkparm_INCLUDED */
42