diff options
author | Robin Watts <Robin.Watts@artifex.com> | 2021-04-08 16:29:55 +0100 |
---|---|---|
committer | Robin Watts <Robin.Watts@artifex.com> | 2021-04-20 15:03:02 +0100 |
commit | e1a3956f252404f07d93be47f7845b23e4a2c4de (patch) | |
tree | 9f702e5846dbeba82ccf4b65a28434a8b80de708 /contrib/gdevbjc_.c | |
parent | 8d83e9871f14d44c7120f0e170c43064c6a738ea (diff) | |
download | ghostpdl-e1a3956f252404f07d93be47f7845b23e4a2c4de.tar.gz |
Move devices away from static init of procs.
Diffstat (limited to 'contrib/gdevbjc_.c')
-rw-r--r-- | contrib/gdevbjc_.c | 73 |
1 files changed, 61 insertions, 12 deletions
diff --git a/contrib/gdevbjc_.c b/contrib/gdevbjc_.c index a661ba0d1..e0ab67ce0 100644 --- a/contrib/gdevbjc_.c +++ b/contrib/gdevbjc_.c @@ -211,10 +211,23 @@ static media_t media_codes[] = { /* ------------------------- 1 bit Monochrome ---------------------------- */ /***************************************************************************/ +static int +bjcmono_initialize(gx_device *dev) +{ + int code = gdev_prn_initialize(dev); + + if (code < 0) + return code; + + set_dev_proc(dev, get_params, gdev_bjc_get_params); + set_dev_proc(dev, put_params, gdev_bjc_put_params); + + return 0; +} + + static const gx_device_procs bjcmono_procs = -prn_color_params_procs(gdev_prn_open, gdev_prn_output_page, gdev_prn_close, - NULL, NULL, - gdev_bjc_get_params, gdev_bjc_put_params); +devprocs_initialize(bjcmono_initialize); const gx_device_bjc_printer gs_bjcmono_device = bjc_device(bjcmono_procs, "bjcmono", @@ -234,10 +247,22 @@ bjc_device(bjcmono_procs, "bjcmono", /* -------------------------- 8 bit Grayscale ---------------------------- */ /***************************************************************************/ +static int +bjcgray_initialize(gx_device *dev) +{ + int code = gdev_prn_initialize_gray(dev); + + if (code < 0) + return code; + + set_dev_proc(dev, get_params, gdev_bjc_get_params); + set_dev_proc(dev, put_params, gdev_bjc_put_params); + + return 0; +} + static const gx_device_procs bjcgray_procs = -prn_color_params_procs(gdev_prn_open, gdev_prn_output_page, gdev_prn_close, - gx_default_gray_map_rgb_color, gx_default_gray_map_color_rgb, - gdev_bjc_get_params, gdev_bjc_put_params); +devprocs_initialize(bjcgray_initialize); const gx_device_bjc_printer gs_bjcgray_device = bjc_device(bjcgray_procs, "bjcgray", @@ -257,10 +282,22 @@ bjc_device(bjcgray_procs, "bjcgray", /* --------------------------- 3 bit CMYK Color -------------------------- */ /***************************************************************************/ +static int +bjccmyk_initialize(gx_device *dev) +{ + int code = gdev_prn_initialize_cmyk1(dev); + + if (code < 0) + return code; + + set_dev_proc(dev, get_params, gdev_bjc_get_params); + set_dev_proc(dev, put_params, gdev_bjc_put_params); + + return 0; +} + static const gx_device_procs bjc_cmykcolor_procs = -bjc_cmyk_param_procs(gdev_prn_open, gdev_prn_output_page, gdev_prn_close, - cmyk_1bit_map_color_rgb, cmyk_1bit_map_cmyk_color, - gdev_bjc_get_params, gdev_bjc_put_params); +devprocs_initialize(bjccmyk_initialize); const gx_device_bjc_printer gs_bjccmyk_device = bjc_device(bjc_cmykcolor_procs, "bjccmyk", @@ -280,10 +317,22 @@ bjc_device(bjc_cmykcolor_procs, "bjccmyk", /* --------------------------- 24 bit TrueColor -------------------------- */ /***************************************************************************/ +static int +bjc_truecolor_initialize(gx_device *dev) +{ + int code = gdev_prn_initialize_cmyk8(dev); + + if (code < 0) + return code; + + set_dev_proc(dev, get_params, gdev_bjc_get_params); + set_dev_proc(dev, put_params, gdev_bjc_put_params); + + return 0; +} + static const gx_device_procs bjc_truecolor_procs = -bjc_cmyk_param_procs(gdev_prn_open, gdev_prn_output_page, gdev_prn_close, - cmyk_8bit_map_color_rgb, cmyk_8bit_map_cmyk_color, - gdev_bjc_get_params, gdev_bjc_put_params); +devprocs_initialize(bjc_truecolor_initialize); const gx_device_bjc_printer gs_bjccolor_device = bjc_device(bjc_truecolor_procs, "bjccolor", |