summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorMarti Maria <info@littlecms.com>2012-08-31 19:46:55 +0200
committerMarti Maria <info@littlecms.com>2012-08-31 19:46:55 +0200
commitd00163e17de9399a77138d035104ff1786d89d1d (patch)
treef6dc22b7fc1356f61f55bf35fb0fdcb4ad85f668 /include
parentb91990c36786859e1dc6034d01efcad8ca32acce (diff)
downloadlcms2-d00163e17de9399a77138d035104ff1786d89d1d.tar.gz
lcms2-2.4 rc2 is here
Diffstat (limited to 'include')
-rw-r--r--include/lcms2.h15
-rw-r--r--include/lcms2_plugin.h6
2 files changed, 19 insertions, 2 deletions
diff --git a/include/lcms2.h b/include/lcms2.h
index 342590c..a0ad4f1 100644
--- a/include/lcms2.h
+++ b/include/lcms2.h
@@ -492,7 +492,13 @@ typedef enum {
cmsSigLabV4toV2 = 0x34203220, // '4 2 '
// Identities
- cmsSigIdentityElemType = 0x69646E20 // 'idn '
+ cmsSigIdentityElemType = 0x69646E20, // 'idn '
+
+ // Float to floatPCS
+ cmsSigLab2FloatPCS = 0x64326C20, // 'd2l '
+ cmsSigFloatPCS2Lab = 0x6C326420, // 'l2d '
+ cmsSigXYZ2FloatPCS = 0x64327820, // 'd2x '
+ cmsSigFloatPCS2XYZ = 0x78326420 // 'x2d '
} cmsStageSignature;
@@ -858,7 +864,6 @@ typedef void* cmsHTRANSFORM;
// Float formatters.
#define TYPE_XYZ_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_XYZ)|CHANNELS_SH(3)|BYTES_SH(4))
-#define TYPE_XYZA_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_XYZ)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(4))
#define TYPE_Lab_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_Lab)|CHANNELS_SH(3)|BYTES_SH(4))
#define TYPE_LabA_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_Lab)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(4))
#define TYPE_GRAY_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_GRAY)|CHANNELS_SH(1)|BYTES_SH(4))
@@ -887,6 +892,12 @@ typedef void* cmsHTRANSFORM;
#define TYPE_RGBA_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(2))
#define TYPE_CMYK_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_CMYK)|CHANNELS_SH(4)|BYTES_SH(2))
+#define TYPE_RGBA_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(2))
+#define TYPE_ARGB_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(2)|SWAPFIRST_SH(1))
+#define TYPE_BGR_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|CHANNELS_SH(3)|BYTES_SH(2)|DOSWAP_SH(1))
+#define TYPE_BGRA_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(2)|DOSWAP_SH(1)|SWAPFIRST_SH(1))
+#define TYPE_ABGR_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|CHANNELS_SH(3)|BYTES_SH(2)|DOSWAP_SH(1))
+
#endif
// Colorspaces
diff --git a/include/lcms2_plugin.h b/include/lcms2_plugin.h
index 51edc86..10e61cb 100644
--- a/include/lcms2_plugin.h
+++ b/include/lcms2_plugin.h
@@ -577,8 +577,14 @@ typedef cmsBool (* _cmsTransformFactory)(_cmsTransformFn* xform,
// Retrieve user data as specified by the factory
+CMSAPI void CMSEXPORT _cmsSetTransformUserData(struct _cmstransform_struct *CMMcargo, void* ptr, _cmsFreeUserDataFn FreePrivateDataFn);
CMSAPI void * CMSEXPORT _cmsGetTransformUserData(struct _cmstransform_struct *CMMcargo);
+
+// Retrieve formatters
+CMSAPI void CMSEXPORT _cmsGetTransformFormatters16 (struct _cmstransform_struct *CMMcargo, cmsFormatter16* FromInput, cmsFormatter16* ToOutput);
+CMSAPI void CMSEXPORT _cmsGetTransformFormattersFloat(struct _cmstransform_struct *CMMcargo, cmsFormatterFloat* FromInput, cmsFormatterFloat* ToOutput);
+
typedef struct {
cmsPluginBase base;