示例#1
0
static
ENUM_PTRS_WITH(function_Sd_enum_ptrs, gs_function_Sd_t *pfn)
{
    index -= 6;
    if (index < st_data_source_max_ptrs)
	return ENUM_USING(st_data_source, &pfn->params.DataSource,
			  sizeof(pfn->params.DataSource), index);
    return ENUM_USING_PREFIX(st_function, st_data_source_max_ptrs);
}
示例#2
0
extern dev_proc_open_device(pattern_clist_open_device);

/* GC information */
/*  Where is the GC information for the common objects that are
    shared between the reader and writer.  I see pointers in
    there, but they don't seem to be GC.  This is why I have
    put the icc_table and the link cache in the reader and the
    writer rather than the common.   fixme: Also, if icc_cache_cl is not
    included in the writer, 64bit builds will seg fault */

extern_st(st_imager_state);
static
ENUM_PTRS_WITH(device_clist_enum_ptrs, gx_device_clist *cdev)
if (index < st_device_forward_max_ptrs) {
    gs_ptr_type_t ret = ENUM_USING_PREFIX(st_device_forward, 0);

    return (ret ? ret : ENUM_OBJ(0));
}
index -= st_device_forward_max_ptrs;
if (CLIST_IS_WRITER(cdev)) {
    switch (index) {
    case 0:
        return ENUM_OBJ((cdev->writer.image_enum_id != gs_no_id ?
                         cdev->writer.clip_path : 0));
    case 1:
        return ENUM_OBJ((cdev->writer.image_enum_id != gs_no_id ?
                         cdev->writer.color_space.space : 0));
    case 2:
        return ENUM_OBJ(cdev->writer.pinst);
    case 3: