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