Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

typedefs.h

Go to the documentation of this file.
00001 /* 00002 File: LHTypeDefs.h 00003 00004 Contains: 00005 00006 Written by: U. J. Krabbenhoeft 00007 00008 Version: 00009 00010 Copyright: © 1993-1997 by Heidelberger Druckmaschinen AG, all rights reserved. 00011 00012 */ 00013 00014 #ifndef LHTypeDefs_h 00015 #define LHTypeDefs_h 00016 00017 /* flags to keep track if there is a named profile in the profile sequenc */ 00018 enum 00019 { 00020 NoNamedColorProfile = 0x0000, 00021 NamedColorProfileOnly = 0x0001, 00022 NamedColorProfileAtBegin = 0x0002, 00023 NamedColorProfileAtEnd = 0x0003 00024 }; 00025 00026 00027 00028 /* ------------------------------------------------------------------------------------------------------------ 00029 CMLutParam - lut struct - set in the Initphase and used by the Match/Check routines 00030 ------------------------------------------------------------------------------------------------------------ */ 00031 typedef struct CMLutParam 00032 { 00033 long inputLutEntryCount; /* count of entries for input lut for one dimension */ 00034 long inputLutWordSize; /* count of bits of each entry ( e.g. 16 for UINT16 ) */ 00035 LUT_DATA_TYPE inputLut; /* pointer/handle to input lut */ 00036 long outputLutEntryCount; /* count of entries for output lut for one dimension */ 00037 long outputLutWordSize; /* count of bits of each entry ( e.g. 8 for UINT8 ) */ 00038 LUT_DATA_TYPE outputLut; /* pointer/handle to output lut */ 00039 long colorLutInDim; /* input dimension ( e.g. 3 for LAB ; 4 for CMYK ) */ 00040 long colorLutOutDim; /* output dimension ( e.g. 3 for LAB ; 4 for CMYK ) */ 00041 long colorLutGridPoints; /* count of gridpoints for color lut ( for one Dimension ) */ 00042 long colorLutWordSize; /* count of bits of each entry ( e.g. 8 for UINT8 ) */ 00043 LUT_DATA_TYPE colorLut; /* pointer/handle to color lut */ 00044 00045 /* --------- used in Init-Phase by CreateCombi ------------ */ 00046 Ptr matrixTRC; 00047 Ptr matrixMFT; 00048 00049 /* ---------- used for DoNDim - DoNDimTableData ------------*/ 00050 unsigned long cmInputColorSpace; /* packing info for input */ 00051 unsigned long cmOutputColorSpace; /* packing info for output */ 00052 void* userData; 00053 } CMLutParam, *CMLutParamPtr, **CMLutParamHdl; 00054 00055 00056 /* ------------------------------------------------------------------------------------------------------------ 00057 CMCalcParam - calc struct for the Match/Check routines 00058 ------------------------------------------------------------------------------------------------------------ */ 00059 00060 typedef struct CMCalcParam 00061 { 00062 CMBitmapColorSpace cmInputColorSpace; /* input color space */ 00063 CMBitmapColorSpace cmOutputColorSpace; /* output color space */ 00064 long cmPixelPerLine; /* pixel per line */ 00065 long cmLineCount; /* number of lines */ 00066 long cmInputBytesPerLine; /* bytes per line */ 00067 long cmOutputBytesPerLine; /* bytes per line */ 00068 long cmInputPixelOffset; /* offset to next input pixel */ 00069 long cmOutputPixelOffset; /* offset to next output pixel */ 00070 void* inputData[8]; /* 8 pointers to input data */ 00071 void* outputData[8]; /* 8 pointers to output data */ 00072 Boolean copyAlpha; /* true -> copy alpha */ 00073 Boolean clearMask; /* true -> set to zero false-> copy alpha (if any) */ 00074 } CMCalcParam, *CMCalcParamPtr, **CMCalcParamHdl; 00075 00076 00077 00078 /* ------------------------------------------------------------------------------------------------------------ 00079 DoNDimCalcData - calc data for DoNDim 00080 ------------------------------------------------------------------------------------------------------------ */ 00081 struct DoNDimCalcData 00082 { 00083 long pixelCount; /* count of input pixels */ 00084 Ptr inputData; /* input array */ 00085 Ptr outputData; /* output array */ 00086 }; 00087 typedef struct DoNDimCalcData DoNDimCalcData, *DoNDimCalcDataPtr, **DoNDimCalcDataHdl; 00088 00089 /* ------------------------------------------------------------------------------------------------------------ 00090 LHCombiData - struct used in initphase while creating the combi-luts 00091 00092 ------------------------------------------------------------------------------------------------------------ */ 00093 typedef struct LHCombiData 00094 { 00095 CMProfileRef theProfile; 00096 OSType profileClass; 00097 OSType dataColorSpace; 00098 OSType profileConnectionSpace; 00099 long gridPointsCube; 00100 long renderingIntent; 00101 long precision; 00102 long maxProfileCount; 00103 long profLoop; 00104 Boolean doCreate_16bit_ELut; 00105 Boolean doCreate_16bit_XLut; 00106 Boolean doCreate_16bit_ALut; 00107 Boolean doCreateLinkProfile; 00108 Boolean doCreate_16bit_Combi; 00109 Boolean doCreateGamutLut; 00110 Boolean amIPCS; 00111 Boolean usePreviewTag; 00112 } LHCombiData, *LHCombiDataPtr, **LHCombiDataHdl; 00113 #if powerc 00114 #pragma options align=reset 00115 #endif 00116 00117 #if powerc 00118 #pragma options align=mac68k 00119 #endif 00120 /* ------------------------------------------------------------------------------------------------------------ 00121 LHProfile - internal information for one profile 00122 ------------------------------------------------------------------------------------------------------------ */ 00123 typedef struct LHProfile 00124 { 00125 CMProfileRef profileSet; 00126 short pcsConversionMode; 00127 short usePreviewTag; 00128 unsigned long renderingIntent; 00129 } LHProfile; 00130 00131 /* ------------------------------------------------------------------------------------------------------------ 00132 LHConcatProfileSet - internal information for a set of profiles 00133 ------------------------------------------------------------------------------------------------------------ */ 00134 typedef struct LHConcatProfileSet 00135 { 00136 unsigned short keyIndex; /* Zero-based */ 00137 unsigned short count; /* Min 1 */ 00138 LHProfile prof[1]; /* Variable. Ordered from Source -> Dest*/ 00139 } LHConcatProfileSet; 00140 #if powerc 00141 #pragma options align=reset 00142 #endif 00143 00144 00145 /* ------------------------------------------------------------------------------------------------------------ 00146 CMMModelData - global CMM data 00147 ------------------------------------------------------------------------------------------------------------ */ 00148 /* 00149 #if powerc 00150 #pragma options align=mac68k 00151 #endif 00152 */ 00153 struct CMMModelData 00154 { 00155 CMLutParam lutParam; 00156 CMLutParam gamutLutParam; 00157 00158 short precision; 00159 Boolean lookup; /* false -> interpolation, true -> lookup only */ 00160 00161 OSType firstColorSpace; 00162 OSType lastColorSpace; 00163 00164 long currentCall; 00165 long lastCall; 00166 00167 long srcProfileVersion; 00168 long dstProfileVersion; 00169 Handle Monet; 00170 00171 /* for NamedColor matching */ 00172 long hasNamedColorProf; 00173 Handle thePCSProfHandle; 00174 LUT_DATA_TYPE theNamedColorTagData; 00175 00176 /*OSType dataColorSpace;*/ 00177 /*OSType profileConnectionSpace;*/ 00178 00179 UINT32 *aIntentArr; 00180 UINT32 nIntents; 00181 UINT32 dwFlags; 00182 Boolean appendDeviceLink; /* if count > 1 && last profile is deviceLink */ 00183 CMWorldRef pBackwardTransform; 00184 #if __IS_MAC 00185 ComponentInstance accelerationComponent; 00186 #endif 00187 }; 00188 typedef struct CMMModelData CMMModelData, *CMMModelPtr, **CMMModelHandle; 00189 00190 /* 00191 #if powerc 00192 #pragma options align=reset 00193 #endif 00194 */ 00195 00196 00197 typedef double Matrix2D[3][3]; 00198 00199 #endif

Generated on Sat May 15 19:42:10 2004 for test by doxygen 1.3.7