19 #define ARCH_PPC __BIG_ENDIAN__
20 #define ARCH_INTEL __LITTLE_ENDIAN__
22 #define AOIAPI __attribute__((visibility("default")))
25 #define OS_BEEP ::AudioServicesPlayAlertSound( kUserPreferredAlert )
27 const float AOI_NegInf = -3.402823466e+38F;
28 const float AOI_PosInf = 3.402823466e+38F;
38 typedef char** PolyHandle;
40# define fixed1 Fixed16( 0x00010000L )
41# define FixedToFloat(a) ( float(a) / fixed1 )
42# define FloatToFixed(a) Fixed16( float(a) * fixed1 )
45 #define AOIAPI __declspec(dllexport)
47 #define AOIAPI __declspec(dllimport)
50 #define OS_BEEP ::MessageBeep(-1)
54 const float AOI_NegInf = -FLT_MAX;
55 const float AOI_PosInf = FLT_MAX;
60typedef unsigned char Uchar;
61typedef unsigned char * StringPtr;
62typedef const unsigned char *ConstStringPtr;
63typedef unsigned char Str31[32];
64typedef unsigned char Str63[64];
65typedef unsigned char Str255[256];
67typedef int32_t Fixed16;
68#if __APPLE__ && !__LP64__
69typedef long ExceptionCode;
71typedef int32_t ExceptionCode;
73typedef int32_t Message;
75#define ENUM32( v ) *(int32_t*)&v
78 #define MAX(x,y) ((x)>(y) ? (x) : (y))
81# define MIN(x,y) ((x)<(y) ? (x) : (y))
84typedef struct AOI_ContourElement_Flags
87 uint16_t selected : 1;
92 uint16_t automatic : 1;
94 uint16_t multipurpose: 1;
95 uint16_t reserved1 : 1;
96 uint16_t reserved2 : 1;
97 uint16_t reserved3 : 1;
98 uint16_t reserved4 : 1;
99 uint16_t reserved5 : 1;
100 uint16_t reserved6 : 1;
101 uint16_t reserved7 : 1;
102} AOI_ContourElement_Flags;
104typedef struct AOI_ContourElement
108 AOI_ContourElement_Flags flag;
110typedef AOI_ContourElement* AOI_ContourElementPtr;
124 void Move(
float,
float );
125 void Rotate(
float,
float,
float );
126 void Scale(
float,
float,
float,
float );
127 void Skew(
float,
float,
float,
float );
129 float Determinant()
const;
130 bool IsUnity()
const;
132 bool IsScale()
const;
160 bool CoordInBounds(
const AOI_Point& )
const;
165typedef enum AOI_ColorSpaceEnum
175 AOI_DeviceNSpace = 32,
176 AOI_DeviceNMask = 31,
178 AOI_IndexedSpaces = 64,
179 AOI_IndexedMask = 63,
180 AOI_IndexedRGBSpace = 65,
181 AOI_IndexedCMYKSpace = 66,
182 AOI_IndexedLABSpace = 72,
183 AOI_IndexedGraySpace = 74,
185 AOI_MaxSpace = 0xFFFFFFFF
189void AOIAPI AOI_ColorSpaceComponentLAB( AOI_ColorSpaceEnum space,
int ch, uint16_t* lab );
196static const uint16_t AOI_ColorValue1 = 0xFFFF;
198#define AOI_INDEXED( s ) AOI_ColorSpaceEnum( (s) | AOI_IndexedSpaces )
199#define AOI_NONINDEXED( s ) AOI_ColorSpaceEnum( (s) & ~AOI_IndexedSpaces )
200#define AOI_DEVICEN( n ) AOI_ColorSpaceEnum( AOI_DeviceNSpace | (n) )
201#define AOI_NCOMPS( s ) int32_t( (s) & AOI_DeviceNMask )
202#define MAX_CHANNELS 64
209 AOI_ColorSpace* space;
210 uint16_t channel[ MAX_CHANNELS ];
212typedef AOI_Color* AOI_ColorPtr;
214#define aurFontSansSerif (0)
215#define aurFontFixedWidth (1 << 0)
216#define aurFontSerif (1 << 1)
217#define aurFontSymbolic (1 << 2)
218#define aurFontItalic (1 << 6)
219#define aurFontBold (1 << 18)
220#define aurFontJapanese (1 << 7)
221#define aurFontKorean (1 << 8)
222#define aurFontChineseT (1 << 9)
223#define aurFontChineseS (1 << 10)
224#define aurFontCJKV ( aurFontJapanese | aurFontKorean | aurFontChineseT | aurFontChineseS )
226typedef enum AOI_EncodingType
236 AOI_ETCustom_Obsolete,
239 AOI_ETMaxEnumEncodingType = 0xFFFFFFFFL
int32_t AOIAPI AOI_ColorSpaceComponents(AOI_ColorSpaceEnum)
int32_t AOI_ColorSpaceBits(AOI_ColorSpaceEnum space)