1 /* Copyright (C) 2001-2019 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., 1305 Grant Avenue - Suite 200, Novato, 13 CA 94945, 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 #include "stdpre.h" 23 #include "gsstruct.h" 24 #include "iref.h" 25 26 /* 27 * Define the structure for stack parameters set at initialization. 28 */ 29 /*typedef struct ref_stack_params_s ref_stack_params_t;*/ /* in istack.h */ 30 struct ref_stack_params_s { 31 uint bot_guard; /* # of guard elements below bot */ 32 uint top_guard; /* # of guard elements above top */ 33 uint block_size; /* size of each block */ 34 uint data_size; /* # of data slots in each block */ 35 ref guard_value; /* t__invalid or t_operator, */ 36 /* bottom guard value */ 37 int underflow_error; /* error code for underflow */ 38 int overflow_error; /* error code for overflow */ 39 bool allow_expansion; /* if false, don't expand */ 40 }; 41 #define private_st_ref_stack_params() /* in istack.c */\ 42 gs_private_st_simple(st_ref_stack_params, ref_stack_params_t,\ 43 "ref_stack_params_t") 44 45 #endif /* istkparm_INCLUDED */ 46