[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [32324] trunk/lib/win64: lcms 1. 19 library for win64

Nathan Letwory nathan at letworyinteractive.com
Tue Oct 5 15:36:44 CEST 2010


Revision: 32324
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=32324
Author:   jesterking
Date:     2010-10-05 15:36:44 +0200 (Tue, 05 Oct 2010)

Log Message:
-----------
lcms 1.19 library for win64

Added Paths:
-----------
    trunk/lib/win64/lcms/
    trunk/lib/win64/lcms/include/
    trunk/lib/win64/lcms/include/icc34.h
    trunk/lib/win64/lcms/include/lcms.h
    trunk/lib/win64/lcms/lib/
    trunk/lib/win64/lcms/lib/lcms.lib
    trunk/lib/win64/lcms/lib/lcms_d.lib

Added: trunk/lib/win64/lcms/include/icc34.h
===================================================================
--- trunk/lib/win64/lcms/include/icc34.h	                        (rev 0)
+++ trunk/lib/win64/lcms/include/icc34.h	2010-10-05 13:36:44 UTC (rev 32324)
@@ -0,0 +1,1029 @@
+/* Header file guard bands */
+#ifndef ICC_H
+#define ICC_H
+
+/***************************************************************** 
+ Copyright (c) 1994-1996 SunSoft, Inc.
+
+                    Rights Reserved
+
+Permission is hereby granted, free of charge, to any person 
+obtaining a copy of this software and associated documentation
+files (the "Software"), to deal in the Software without restrict- 
+ion, including without limitation the rights to use, copy, modify, 
+merge, publish distribute, sublicense, and/or sell copies of the 
+Software, and to permit persons to whom the Software is furnished 
+to do so, subject to the following conditions: 
+ 
+The above copyright notice and this permission notice shall be 
+included in all copies or substantial portions of the Software. 
+ 
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 
+OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-
+INFRINGEMENT.  IN NO EVENT SHALL SUNSOFT, INC. OR ITS PARENT 
+COMPANY BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 
+WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 
+OTHER DEALINGS IN THE SOFTWARE. 
+ 
+Except as contained in this notice, the name of SunSoft, Inc. 
+shall not be used in advertising or otherwise to promote the 
+sale, use or other dealings in this Software without written 
+authorization from SunSoft Inc. 
+******************************************************************/
+
+/*
+ * This version of the header file corresponds to the profile
+ * specification version 3.4.
+ *
+ * All header file entries are pre-fixed with "ic" to help 
+ * avoid name space collisions. Signatures are pre-fixed with
+ * icSig.
+ *
+ * The structures defined in this header file were created to
+ * represent a description of an ICC profile on disk. Rather
+ * than use pointers a technique is used where a single byte array 
+ * was placed at the end of each structure. This allows us in "C"
+ * to extend the structure by allocating more data than is needed
+ * to account for variable length structures.
+ *
+ * This also ensures that data following is allocated
+ * contiguously and makes it easier to write and read data from
+ * the file. 
+ *
+ * For example to allocate space for a 256 count length UCR
+ * and BG array, and fill the allocated data.  Note strlen + 1
+ * to remember NULL terminator.
+ *
+        icUcrBgCurve    *ucrCurve, *bgCurve;
+        int             ucr_nbytes, bg_nbytes, string_bytes;
+        icUcrBg         *ucrBgWrite;
+        char            ucr_string[100], *ucr_char;
+
+        strcpy(ucr_string, "Example ucrBG curves");
+        ucr_nbytes = sizeof(icUInt32Number) + 
+                 (UCR_CURVE_SIZE * sizeof(icUInt16Number));
+        bg_nbytes = sizeof(icUInt32Number) + 
+                 (BG_CURVE_SIZE * sizeof(icUInt16Number));
+        string_bytes = strlen(ucr_string) + 1;
+
+        ucrBgWrite = (icUcrBg *)malloc(
+                                (ucr_nbytes + bg_nbytes + string_bytes));
+ 
+        ucrCurve = (icUcrBgCurve *)ucrBgWrite->data;
+        ucrCurve->count = UCR_CURVE_SIZE;
+        for (i=0; i<ucrCurve->count; i++)
+                ucrCurve->curve[i] = (icUInt16Number)i;
+ 
+        bgCurve = (icUcrBgCurve *)((char *)ucrCurve + ucr_nbytes);
+        bgCurve->count = BG_CURVE_SIZE;
+        for (i=0; i<bgCurve->count; i++)
+                bgCurve->curve[i] = 255 - (icUInt16Number)i;
+
+        ucr_char = (char *)((char *)bgCurve + bg_nbytes);
+        memcpy(ucr_char, ucr_string, string_bytes);
+ *
+ */
+
+/*
+ * Many of the structures contain variable length arrays. This
+ * is represented by the use of the convention.
+ *
+ *      type    data[icAny];
+ */
+
+/*------------------------------------------------------------------------*/
+/*
+ * Defines used in the specification
+ */
+#define icMagicNumber                   0x61637370L     /* 'acsp' */
+#define icVersionNumber                 0x02100000L     /* 2.1.0, BCD */
+
+/* Screening Encodings */
+#define icPrtrDefaultScreensFalse       0x00000000L     /* Bit pos 0 */
+#define icPrtrDefaultScreensTrue        0x00000001L     /* Bit pos 0 */
+#define icLinesPerInch                  0x00000002L     /* Bit pos 1 */
+#define icLinesPerCm                    0x00000000L     /* Bit pos 1 */
+
+/* 
+ * Device attributes, currently defined values correspond
+ * to the low 4 bytes of the 8 byte attribute quantity, see
+ * the header for their location.
+ */
+#define icReflective                    0x00000000L     /* Bit pos 0 */
+#define icTransparency                  0x00000001L     /* Bit pos 0 */
+#define icGlossy                        0x00000000L     /* Bit pos 1 */
+#define icMatte                         0x00000002L     /* Bit pos 1 */
+
+/*
+ * Profile header flags, the low 16 bits are reserved for consortium
+ * use.
+ */
+#define icEmbeddedProfileFalse          0x00000000L     /* Bit pos 0 */
+#define icEmbeddedProfileTrue           0x00000001L     /* Bit pos 0 */
+#define icUseAnywhere                   0x00000000L     /* Bit pos 1 */
+#define icUseWithEmbeddedDataOnly       0x00000002L     /* Bit pos 1 */
+
+/* Ascii or Binary data */
+#define icAsciiData                     0x00000000L 
+#define icBinaryData                    0x00000001L
+
+/* 
+ * Define used to indicate that this is a variable length array
+ */
+#define icAny                           1
+
+
+/*------------------------------------------------------------------------*/
+/*
+ * Use this area to translate platform definitions of long
+ * etc into icXXX form. The rest of the header uses the icXXX
+ * typedefs. Signatures are 4 byte quantities.
+ *
+ */
+
+
+#ifdef PACKAGE_NAME
+/*
+  June 9, 2003, Adapted for use with configure by Bob Friesenhahn
+  Added the stupid check for autoconf by Marti Maria. 
+  PACKAGE_NAME is defined if autoconf is being used 
+*/
+
+typedef @UINT8_T@	icUInt8Number;
+typedef @UINT16_T@	icUInt16Number;
+typedef @UINT32_T@	icUInt32Number;
+typedef @UINT32_T@	icUInt64Number[2];
+
+typedef @INT8_T@	icInt8Number;
+typedef @INT16_T@	icInt16Number;
+typedef @INT32_T@	icInt32Number;
+typedef @INT32_T@	icInt64Number[2];
+
+#else
+
+/* 
+ *Apr-17-2002: Modified by Marti Maria in order to provide wider portability.
+ */
+
+#if defined (__digital__) && defined (__unix__)
+
+/* Tru64 */
+
+#include <inttypes.h>
+
+typedef uint8_t   icUInt8Number;
+typedef uint16_t  icUInt16Number;
+typedef uint32_t  icUInt32Number;
+typedef uint32_t  icUInt64Number[2];
+
+typedef int8_t     icInt8Number;
+typedef int16_t    icInt16Number;
+typedef int32_t    icInt32Number;
+typedef int32_t    icInt64Number[2];
+
+#else
+#ifdef __sgi
+#include "sgidefs.h"
+
+
+/*
+ * Number definitions
+ */
+
+/* Unsigned integer numbers */
+typedef unsigned char   icUInt8Number;
+typedef unsigned short  icUInt16Number;
+typedef __uint32_t      icUInt32Number;
+typedef __uint32_t      icUInt64Number[2];
+
+/* Signed numbers */
+typedef char            icInt8Number;
+typedef short           icInt16Number;
+typedef __int32_t       icInt32Number;
+typedef __int32_t       icInt64Number[2];
+
+
+#else   
+#if defined(__GNUC__) || defined(__unix__) || defined(__unix)
+
+#include <sys/types.h>
+
+#if defined(__sun) || defined(__hpux) || defined (__MINGW) || defined(__MINGW32__)
+
+#if defined (__MINGW) || defined(__MINGW32__)
+#include <stdint.h>
+#endif
+
+
+typedef uint8_t   icUInt8Number;
+typedef uint16_t  icUInt16Number;
+typedef uint32_t  icUInt32Number;
+typedef uint32_t  icUInt64Number[2];
+
+#else
+
+/* Unsigned integer numbers */
+typedef u_int8_t   icUInt8Number;
+typedef u_int16_t  icUInt16Number;
+typedef u_int32_t  icUInt32Number;
+typedef u_int32_t  icUInt64Number[2];
+
+#endif
+
+
+/* Signed numbers */
+typedef int8_t     icInt8Number;
+typedef int16_t    icInt16Number;
+typedef int32_t    icInt32Number;
+typedef int32_t    icInt64Number[2];
+
+
+#else /* default definitions */
+
+/*
+ * Number definitions
+ */
+
+/* Unsigned integer numbers */
+typedef unsigned char   icUInt8Number;
+typedef unsigned short  icUInt16Number;
+typedef unsigned long   icUInt32Number;
+typedef unsigned long   icUInt64Number[2];
+
+/* Signed numbers */
+typedef char            icInt8Number;
+typedef short           icInt16Number;
+typedef long            icInt32Number;
+typedef long            icInt64Number[2];
+
+
+#endif  /* default defs */
+#endif
+#endif
+#endif
+
+/* Base types */
+
+typedef icInt32Number    icSignature;
+typedef icInt32Number    icS15Fixed16Number;
+typedef icUInt32Number   icU16Fixed16Number;
+
+
+/*------------------------------------------------------------------------*/
+/* public tags and sizes */
+typedef enum {
+    icSigAToB0Tag                       = 0x41324230L,  /* 'A2B0' */ 
+    icSigAToB1Tag                       = 0x41324231L,  /* 'A2B1' */
+    icSigAToB2Tag                       = 0x41324232L,  /* 'A2B2' */ 
+    icSigBlueColorantTag                = 0x6258595AL,  /* 'bXYZ' */
+    icSigBlueTRCTag                     = 0x62545243L,  /* 'bTRC' */
+    icSigBToA0Tag                       = 0x42324130L,  /* 'B2A0' */
+    icSigBToA1Tag                       = 0x42324131L,  /* 'B2A1' */
+    icSigBToA2Tag                       = 0x42324132L,  /* 'B2A2' */
+    icSigCalibrationDateTimeTag         = 0x63616C74L,  /* 'calt' */
+    icSigCharTargetTag                  = 0x74617267L,  /* 'targ' */ 
+    icSigCopyrightTag                   = 0x63707274L,  /* 'cprt' */
+    icSigCrdInfoTag                     = 0x63726469L,  /* 'crdi' */
+    icSigDeviceMfgDescTag               = 0x646D6E64L,  /* 'dmnd' */
+    icSigDeviceModelDescTag             = 0x646D6464L,  /* 'dmdd' */
+    icSigGamutTag                       = 0x67616D74L,  /* 'gamt ' */
+    icSigGrayTRCTag                     = 0x6b545243L,  /* 'kTRC' */
+    icSigGreenColorantTag               = 0x6758595AL,  /* 'gXYZ' */
+    icSigGreenTRCTag                    = 0x67545243L,  /* 'gTRC' */
+    icSigLuminanceTag                   = 0x6C756d69L,  /* 'lumi' */
+    icSigMeasurementTag                 = 0x6D656173L,  /* 'meas' */

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list