1 /* Copyright (C) 2001-2007 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, modified
8    or distributed except as expressly authorized under the terms of that
9    license.  Refer to licensing information at http://www.artifex.com/
10    or contact Artifex Software, Inc.,  7 Mt. Lassen Drive - Suite A-134,
11    San Rafael, CA  94903, U.S.A., +1(415)492-9861, for further information.
12 */
13 
14 /* $Id: gscicach.h 10624 2010-01-20 18:11:39Z mvrhel $ */
15 /* A color index conversion cache. */
16 
17 #ifndef gscicach_INCLUDED
18 #  define gscicach_INCLUDED
19 
20 #include "gxdevcli.h" /* For frac31. */
21 
22 #ifndef gs_color_index_cache_DEFINED
23 #  define gs_color_index_cache_DEFINED
24 typedef struct gs_color_index_cache_s gs_color_index_cache_t;
25 #endif
26 
27 gs_color_index_cache_t *gs_color_index_cache_create(gs_memory_t *memory,
28 		const gs_color_space *direct_space, gx_device *dev, gs_imager_state *pis, bool need_frac, gx_device *trans_dev);
29 void gs_color_index_cache_destroy(gs_color_index_cache_t *this);
30 
31 int gs_cached_color_index(gs_color_index_cache_t *this, const float *paint_values, gx_device_color *pdevc, frac31 *frac_values);
32 
33 #endif /* gscicach_INCLUDED */
34