diff options
author | Robin Watts <robin.watts@artifex.com> | 2016-05-27 17:13:56 +0100 |
---|---|---|
committer | Robin Watts <robin.watts@artifex.com> | 2016-05-29 10:11:30 +0100 |
commit | 6ac9843782043fd221db156de525fc825ecdeb0c (patch) | |
tree | 0de733d065f4a5a5f0df0c80278c07a09247ca02 /source/fitz/draw-imp.h | |
parent | 37dbda6399654f4aaf6a5062e70d85b578d2d584 (diff) | |
download | mupdf-6ac9843782043fd221db156de525fc825ecdeb0c.tar.xz |
Split draw-paint.c plotters out into separate functions.
Again, mainly so profiling works nicely.
Diffstat (limited to 'source/fitz/draw-imp.h')
-rw-r--r-- | source/fitz/draw-imp.h | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/source/fitz/draw-imp.h b/source/fitz/draw-imp.h index 7b035d08..bb94be4d 100644 --- a/source/fitz/draw-imp.h +++ b/source/fitz/draw-imp.h @@ -29,10 +29,14 @@ fz_irect *fz_bound_path_accurate(fz_context *ctx, fz_irect *bbox, const fz_irect * Plotting functions. */ -void fz_paint_solid_color(unsigned char * restrict dp, int n, int w, const unsigned char * restrict color, int da); +typedef void (fz_solid_color_painter_t)(unsigned char * restrict dp, int n, int w, const unsigned char * restrict color, int da); -void fz_paint_span(unsigned char * restrict dp, int da, const unsigned char * restrict sp, int sa, int n, int w, int alpha); -void fz_paint_span_with_color(unsigned char * restrict dp, const unsigned char * restrict mp, int n, int w, const unsigned char * restrict color, int da); +typedef void (fz_span_painter_t)(unsigned char * restrict dp, int da, const unsigned char * restrict sp, int sa, int n, int w, int alpha); +typedef void (fz_span_color_painter_t)(unsigned char * restrict dp, const unsigned char * restrict mp, int n, int w, const unsigned char * restrict color, int da); + +fz_solid_color_painter_t *fz_get_solid_color_painter(int n, const unsigned char * restrict color, int da); +fz_span_painter_t *fz_get_span_painter(int da, int sa, int n, int alpha); +fz_span_color_painter_t *fz_get_span_color_painter(int n, int da, const unsigned char * restrict color); void fz_paint_image(fz_pixmap *dst, const fz_irect * restrict scissor, fz_pixmap * restrict shape, const fz_pixmap * restrict img, const fz_matrix * restrict ctm, int alpha, int lerp_allowed, int gridfit_as_tiled); void fz_paint_image_with_color(fz_pixmap * restrict dst, const fz_irect * restrict scissor, fz_pixmap *restrict shape, const fz_pixmap * restrict img, const fz_matrix * restrict ctm, const unsigned char * restrict colorbv, int lerp_allowed, int gridfit_as_tiled); |