summaryrefslogtreecommitdiff
path: root/include/fitz/wld_color.h
diff options
context:
space:
mode:
authorTor Andersson <tor@ghostscript.com>2005-06-07 15:09:48 +0200
committerTor Andersson <tor@ghostscript.com>2005-06-07 15:09:48 +0200
commitcefd16bc7a557ccaf0bb66d504d7a8cbc9ec43d3 (patch)
treefbfc8e852b3fea2f355cee6016f9976f8304666e /include/fitz/wld_color.h
parent5998b49add853664ad08f57071770b5433e667be (diff)
downloadmupdf-cefd16bc7a557ccaf0bb66d504d7a8cbc9ec43d3.tar.xz
more shuffling
Diffstat (limited to 'include/fitz/wld_color.h')
-rw-r--r--include/fitz/wld_color.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/include/fitz/wld_color.h b/include/fitz/wld_color.h
new file mode 100644
index 00000000..f6fae48c
--- /dev/null
+++ b/include/fitz/wld_color.h
@@ -0,0 +1,40 @@
+typedef struct fz_colorspace_s fz_colorspace;
+typedef struct fz_colorcube_s fz_colorcube;
+typedef struct fz_colorcube1_s fz_colorcube1;
+typedef struct fz_colorcube3_s fz_colorcube3;
+typedef struct fz_colorcube4_s fz_colorcube4;
+
+enum { FZ_MAXCOLORS = 32 };
+
+struct fz_colorspace_s
+{
+ int refs;
+ char name[16];
+ int n;
+ void (*convpixmap)(fz_colorspace *ss, fz_pixmap *sp, fz_colorspace *ds, fz_pixmap *dp);
+ void (*convcolor)(fz_colorspace *ss, float *sv, fz_colorspace *ds, float *dv);
+ void (*toxyz)(fz_colorspace *, float *src, float *xyz);
+ void (*fromxyz)(fz_colorspace *, float *xyz, float *dst);
+ void (*drop)(fz_colorspace *);
+};
+
+struct fz_colorcube1_s { unsigned char v[17]; };
+struct fz_colorcube3_s { unsigned char v[17][17][17]; };
+struct fz_colorcube4_s { unsigned char v[17][17][17][17]; };
+
+struct fz_colorcube_s
+{
+ fz_colorspace *src;
+ fz_colorspace *dst;
+ void **subcube; /* dst->n * colorcube(src->n) */
+};
+
+fz_colorspace *fz_keepcolorspace(fz_colorspace *cs);
+void fz_dropcolorspace(fz_colorspace *cs);
+
+void fz_convertcolor(fz_colorspace *srcs, float *srcv, fz_colorspace *dsts, float *dstv);
+void fz_convertpixmap(fz_colorspace *srcs, fz_pixmap *srcv, fz_colorspace *dsts, fz_pixmap *dstv);
+
+void fz_stdconvcolor(fz_colorspace *srcs, float *srcv, fz_colorspace *dsts, float *dstv);
+void fz_stdconvpixmap(fz_colorspace *srcs, fz_pixmap *srcv, fz_colorspace *dsts, fz_pixmap *dstv);
+