1 /* Copyright (C) 1990, 2000 Aladdin Enterprises. All rights reserved. 2 3 This software is provided AS-IS with no warranty, either express or 4 implied. 5 6 This software is distributed under license and may not be copied, 7 modified or distributed except as expressly authorized under the terms 8 of the license contained in the file LICENSE in this distribution. 9 10 For more information about licensing, please refer to 11 http://www.ghostscript.com/licensing/. For information on 12 commercial licensing, go to http://www.artifex.com/licensing/ or 13 contact Artifex Software, Inc., 101 Lucas Valley Road #110, 14 San Rafael, CA 94903, U.S.A., +1(415)492-9861. 15 */ 16 17 /* $Id: btoken.h,v 1.7 2002/06/16 04:47:10 lpd Exp $ */ 18 /* Definitions for Level 2 binary tokens */ 19 20 #ifndef btoken_INCLUDED 21 # define btoken_INCLUDED 22 23 /* 24 * Define accessors for pointers to the system and user name tables 25 * (arrays). Note that these refer implicitly to i_ctx_p. Note also 26 * that these pointers may be NULL: clients must check this. 27 */ 28 #define system_names_p (gs_imemory.space_global->names_array) 29 #define user_names_p (gs_imemory.space_local->names_array) 30 31 /* Create a system or user name table (in the stable memory of mem). */ 32 int create_names_array(ref **ppnames, gs_memory_t *mem, 33 client_name_t cname); /* in zbseq.c */ 34 35 /* Convert an object to its representation in a binary object sequence. */ 36 int encode_binary_token(i_ctx_t *i_ctx_p, const ref *obj, long *ref_offset, 37 long *char_offset, byte *str); /* in iscanbin.c */ 38 39 /* Define the current binary object format for operators. */ 40 /* This is a ref so that it can be managed properly by save/restore. */ 41 #define ref_binary_object_format_container i_ctx_p 42 #define ref_binary_object_format\ 43 (ref_binary_object_format_container->binary_object_format) 44 45 #endif /* btoken_INCLUDED */ 46