~ubuntu-branches/ubuntu/jaunty/ghostscript/jaunty-updates

« back to all changes in this revision

Viewing changes to src/gsdfilt.h

  • Committer: Bazaar Package Importer
  • Author(s): Till Kamppeter
  • Date: 2009-01-20 16:40:45 UTC
  • mfrom: (1.1.10 upstream)
  • Revision ID: james.westby@ubuntu.com-20090120164045-lnfhi0n30o5lwhwa
Tags: 8.64.dfsg.1~svn9377-0ubuntu1
* New upstream release (SVN rev 9377)
   o Fixes many bugs concerning PDF rendering, to make the PDF printing
     workflow correctly working.
   o Fixes long-standing bugs in many drivers, like input paper tray and
     duplex options not working for the built-in PCL 4, 5, 5c, 5e, and
     6/XL drivers, PDF input not working for bjc600, bjc800, and cups
     output devices, several options not working and uninitialized
     memory with cups output device.
   o Merged nearly all patches of the Ubuntu and Debian packages upstream.
   o Fixes LP: #317810, LP: #314439, LP: #314018.
* debian/patches/03_libpaper_support.dpatch,
  debian/patches/11_gs-cjk_font_glyph_handling_fix.dpatch,
  debian/patches/12_gs-cjk_vertical_writing_metrics_fix.dpatch,
  debian/patches/13_gs-cjk_cjkps_examples.dpatch,
  debian/patches/20_bbox_segv_fix.dpatch,
  debian/patches/21_brother_7x0_gdi_fix.dpatch,
  debian/patches/22_epsn_margin_workaround.dpatch,
  debian/patches/24_gs_man_fix.dpatch,
  debian/patches/25_toolbin_insecure_tmp_usage_fix.dpatch,
  debian/patches/26_assorted_script_fixes.dpatch,
  debian/patches/29_gs_css_fix.dpatch,
  debian/patches/30_ps2pdf_man_improvement.dpatch,
  debian/patches/31_fix-gc-sigbus.dpatch,
  debian/patches/34_ftbfs-on-hurd-fix.dpatch,
  debian/patches/35_disable_libcairo.dpatch,
  debian/patches/38_pxl-duplex.dpatch,
  debian/patches/39_pxl-resolution.dpatch,
  debian/patches/42_gs-init-ps-delaybind-fix.dpatch,
  debian/patches/45_bjc600-bjc800-pdf-input.dpatch,
  debian/patches/48_cups-output-device-pdf-duplex-uninitialized-memory-fix.dpatch,
  debian/patches/50_lips4-floating-point-exception.dpatch,
  debian/patches/52_cups-device-logging.dpatch,
  debian/patches/55_pcl-input-slot-fix.dpatch,
  debian/patches/57_pxl-input-slot-fix.dpatch,
  debian/patches/60_pxl-cups-driver-pdf.dpatch,
  debian/patches/62_onebitcmyk-pdf.dpatch,
  debian/patches/65_too-big-temp-files-1.dpatch,
  debian/patches/67_too-big-temp-files-2.dpatch,
  debian/patches/70_take-into-account-data-in-stream-buffer-before-refill.dpatch:
  Removed, applied upstream.
* debian/patches/01_docdir_fix_for_debian.dpatch,
  debian/patches/02_gs_man_fix_debian.dpatch,
  debian/patches/01_docdir-fix-for-debian.dpatch,
  debian/patches/02_docdir-fix-for-debian.dpatch: Renamed patches to
  make merging with Debian easier.
* debian/patches/32_improve-handling-of-media-size-changes-from-gv.dpatch, 
  debian/patches/33_bad-params-to-xinitimage-on-large-bitmaps.dpatch:
  regenerated for new source directory structure.
* debian/rules: Corrected paths to remove cidfmap (it is in Resource/Init/
  in GS 8.64) and to install headers (source paths are psi/ and base/ now).
* debian/rules: Remove all fontmaps, as DeFoMa replaces them.
* debian/local/pdftoraster/pdftoraster.c,
  debian/local/pdftoraster/pdftoraster.convs, debian/rules: Removed
  added pdftoraster filter and use the one which comes with Ghostscript.
* debian/ghostscript.links: s/8.63/8.64/

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/* Copyright (C) 2001-2006 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
 
/* $Id: gsdfilt.h 8022 2007-06-05 22:23:38Z giles $ */
14
 
 
15
 
#ifndef gsdfilt_INCLUDED
16
 
#  define gsdfilt_INCLUDED
17
 
 
18
 
/* The device filter stack lives in the gs_state structure. It represents
19
 
   a chained sequence of devices that filter device requests, each forwarding
20
 
   to its target. The last such target is the physical device as set by
21
 
   setpagedevice.
22
 
 
23
 
   There is a "shadow" gs_device_filter_stack_s object for each device in
24
 
   the chain. The stack management uses these objects to keep track of the
25
 
   chain.
26
 
*/
27
 
 
28
 
#ifndef gs_device_filter_stack_DEFINED
29
 
#  define gs_device_filter_stack_DEFINED
30
 
typedef struct gs_device_filter_stack_s gs_device_filter_stack_t;
31
 
#endif
32
 
 
33
 
#ifndef gs_device_filter_DEFINED
34
 
#  define gs_device_filter_DEFINED
35
 
typedef struct gs_device_filter_s gs_device_filter_t;
36
 
#endif
37
 
 
38
 
struct gs_device_filter_s {
39
 
    int (*push)(gs_device_filter_t *self, gs_memory_t *mem, gs_state *pgs,
40
 
                gx_device **pdev, gx_device *target);
41
 
    int (*prepop)(gs_device_filter_t *self, gs_memory_t *mem, gs_state *pgs,
42
 
                  gx_device *dev);
43
 
    int (*postpop)(gs_device_filter_t *self, gs_memory_t *mem, gs_state *pgs,
44
 
                   gx_device *dev);
45
 
};
46
 
 
47
 
extern_st(st_gs_device_filter);
48
 
 
49
 
/**
50
 
 * gs_push_device_filter: Push a device filter.
51
 
 * @mem: Memory for creating device filter.
52
 
 * @pgs: Graphics state.
53
 
 * @df: The device filter.
54
 
 *
55
 
 * Pushes a device filter, thereby becoming the first in the chain.
56
 
 *
57
 
 * Return value: 0 on success, or error code.
58
 
 **/
59
 
int gs_push_device_filter(gs_memory_t *mem, gs_state *pgs, gs_device_filter_t *df);
60
 
 
61
 
/**
62
 
 * gs_pop_device_filter: Pop a device filter.
63
 
 * @mem: Memory in which device filter was created, for freeing.
64
 
 * @pgs: Graphics state.
65
 
 *
66
 
 * Removes the topmost device filter (ie, first filter in the chain)
67
 
 * from the graphics state's device filter stack.
68
 
 *
69
 
 * Return value: 0 on success, or error code.
70
 
 **/
71
 
int gs_pop_device_filter(gs_memory_t *mem, gs_state *pgs);
72
 
 
73
 
/**
74
 
 * gs_clear_device_filters: Clear device filters from a graphics state.
75
 
 * @mem: Memory in which device filters were created, for freeing.
76
 
 * @pgs: Graphics state.
77
 
 *
78
 
 * Clears all device filters from the given graphics state.
79
 
 *
80
 
 * Return value: 0 on success, or error code.
81
 
 **/
82
 
int gs_clear_device_filters(gs_memory_t *mem, gs_state *pgs);
83
 
 
84
 
 
85
 
#endif /* gsdfilt_INCLUDED */