Add icm.h for colour management

Mike McCormack mike at codeweavers.com
Wed Jan 7 03:04:54 CST 2004


Start of a header for MS Colour Management.

ChangeLog;
* Add icm.h for colour management
-------------- next part --------------
Index: include/Makefile.in
===================================================================
RCS file: /home/wine/wine/include/Makefile.in,v
retrieving revision 1.112
diff -u -r1.112 Makefile.in
--- include/Makefile.in	8 Dec 2003 21:44:24 -0000	1.112
+++ include/Makefile.in	7 Jan 2004 08:39:53 -0000
@@ -85,6 +85,7 @@
 	fci.h \
 	fdi.h \
 	guiddef.h \
+	icm.h \
 	icmpapi.h \
 	imagehlp.h \
 	imm.h \
--- /dev/null	1994-07-18 08:46:18.000000000 +0900
+++ include/icm.h	2004-01-07 18:00:52.000000000 +0900
@@ -0,0 +1,101 @@
+/*
+ * Copyright (C) the Wine project
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ */
+
+#ifndef __WINE_ICM_H
+#define __WINE_ICM_H
+
+typedef HANDLE HPROFILE;
+typedef HPROFILE *PHPROFILE;
+typedef HANDLE HTRANSFORM;
+
+typedef DWORD TAGTYPE;
+typedef TAGTYPE *PTAGTYPE,*LPTAGTYPE;
+
+typedef enum {
+    BM_x555RGB     = 0x00,
+    BM_565RGB      = 0x01,
+    BM_RGBTRIPLETS = 0x02,
+    BM_BGRTRIPLETS = 0x04,
+    BM_xRGBQUADS   = 0x08,
+    BM_10b_RGB     = 0x09,
+    BM_16b_RGB     = 0x0a,
+    BM_xBGRQUADS   = 0x10,
+    BM_CMYKQUADS   = 0x20,
+    BM_x555XYZ     = 0x101,
+    BM_x555Yxz,
+    BM_x555Lab,
+    BM_x555G3CH,
+    BM_XYZTRIPLETS = 0x201,
+    BM_YxyTRIPLETS,
+    BM_LabTRIPLETS,
+    BM_G3CHTRIPLETS,
+    BM_5CHANNEL,
+    BM_6CHANNEL,
+    BM_7CHANNEL,
+    BM_8CHANNEL,
+    BM_GRAY,
+    BM_xXYZQUADS   = 0x301,
+    BM_xYxyQUADS,
+    BM_xLabQUADS,
+    BM_xG3CHQUADS,
+    BM_KYMCQUADS,
+    BM_10b_XYZ     = 0x401,
+    BM_10b_Yxy,
+    BM_10b_Lab,
+    BM_10b_G3CH,
+    BM_NAMED_INDEX,
+    BM_16b_XYZ     = 0x501,
+    BM_16b_Yxy,
+    BM_16b_Lab,
+    BM_16b_G3CH,
+    BM_16b_GRAY,
+} BMFORMAT;
+
+typedef BOOL WINAPI (*PBMCALLBACKFN)(ULONG,ULONG,ULONG);
+typedef PBMCALLBACKFN LPPBMCALLBACKFN;
+
+typedef struct tagPROFILEHEADER {
+    DWORD phSize;
+    DWORD phCMMType;
+    DWORD phVersion;
+    DWORD phClass;
+    DWORD phDataColorSpace;
+    DWORD phConnectionSpace;
+    DWORD phDateTime[3];
+    DWORD phSignature;
+    DWORD phPlatform;
+    DWORD phProfileFlags;
+    DWORD phManufacturer;
+    DWORD phModel;
+    DWORD phAttributes;
+    DWORD phRenderingIntent;
+    CIEXYZ phIlluminant;
+    DWORD phCreator;
+    BYTE phReserved[44];
+} PROFILEHEADER;
+typedef PROFILEHEADER *PPROFILEHEADER,*LPPROFILEHEADER;
+
+typedef struct tagPROFILE {
+    DWORD dwType;
+    PVOID pProfileData;
+    DWORD cbDataSize;
+} PROFILE;
+typedef PROFILE *PPROFILE,*LPPROFILE;
+
+#endif
+


More information about the wine-patches mailing list