00001
#ifndef MemLink_h
00002
#define MemLink_h
00003
00004 typedef icXYZNumber MyXYZNumber;
00005
00006 struct LHTextType {
00007
OSType base;
00008
unsigned long reserved;
00009
unsigned char text[1];
00010 };
00011 typedef struct LHTextType LHTextType;
00012 struct LHTextDescriptionType {
00013
OSType typeDescriptor;
00014
unsigned long reserved;
00015
unsigned long ASCIICount;
00016
unsigned char ASCIIName[2];
00017
unsigned long UniCodeCode;
00018
unsigned long UniCodeCount;
00019
unsigned char UniCodeName[2];
00020
short ScriptCodeCode;
00021
unsigned char ScriptCodeCount;
00022
unsigned char ScriptCodeName[2];
00023 };
00024 typedef struct LHTextDescriptionType LHTextDescriptionType;
00025 typedef struct{
00026
double X;
double Y;
double Z;
00027 }
MyDoubleXYZ;
00028
00029
CMError MyGetColorSpaces(
CMConcatProfileSet *profileSet,
00030 UINT32 *sCS,
00031 UINT32 *dCS );
00032 #define Round(a) (((a)>0.)?((a)+.5):((a)-.5))
00033
void MakeMyDoubleXYZ( MyXYZNumber *x,
MyDoubleXYZ *ret );
00034
CMError MyAdd_NL_Header( UINT32 theSize,
icHeader *linkHeader,
00035 UINT32 aIntent, UINT32 aClass, UINT32 aColorSpace, UINT32 aConnectionSpace );
00036
CMError MyAdd_NL_DescriptionTag ( LHTextDescriptionType *descPtr,
unsigned char *theText );
00037
CMError MyAdd_NL_ColorantTag (
icXYZType *descPtr, MyXYZNumber *aColor );
00038
CMError MyAdd_NL_CurveTag (
icCurveType *descPtr,
unsigned short Gamma );
00039
CMError MyAdd_NL_CopyrightTag (
unsigned char *copyrightText, LHTextType *aLHTextType );
00040
CMError MyAdd_NL_SequenceDescTag(
CMConcatProfileSet *profileSet,
00041
icProfileSequenceDescType *pSeqPtr,
00042
long *aSize );
00043
CMError MyAdd_NL_AToB0Tag_mft1( CMMModelPtr cw,
icLut8Type *lutPtr,
long colorLutSize );
00044
CMError MyAdd_NL_AToB0Tag_mft2( CMMModelPtr cw,
icLut16Type *lutPtr,
long colorLutSize );
00045
CMError MyAdd_NL_HeaderMS ( UINT32 theSize,
icHeader *linkHeader,
unsigned long aIntent, icColorSpaceSignature sCS, icColorSpaceSignature dCS );
00046
00047
CMError DeviceLinkFill( CMMModelPtr cw,
00048
CMConcatProfileSet *profileSet,
00049
icProfile **theProf,
00050
unsigned long aIntent );
00051
#endif