// CodeGear C++Builder // Copyright (c) 1995, 2025 by Embarcadero Technologies, Inc. // All rights reserved // (DO NOT EDIT: machine generated header) 'iexBitmaps.pas' rev: 37.00 (Windows) #ifndef iexBitmapsHPP #define iexBitmapsHPP #pragma delphiheader begin #pragma option push #if defined(__BORLANDC__) && !defined(__clang__) #pragma option -w- // All warnings off #pragma option -Vx // Zero-length empty class member #endif #pragma pack(push,8) #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include //-- user supplied ----------------------------------------------------------- namespace Iexbitmaps { //-- forward type declarations ----------------------------------------------- struct TTIFFColor; struct TTIFFHeader; struct TTIFFTAG; struct TBigTIFFTAG; class DELPHICLASS TIETIFFIFDReader; class DELPHICLASS TIETIFFIFDWriter; class DELPHICLASS TIEMarkerList; struct TIPTCInfo; class DELPHICLASS TIEIPTCInfoList; class DELPHICLASS TIEBaseBitmap; struct IE_PROFILE; class DELPHICLASS TIEICC; class DELPHICLASS TIEVirtualBitmapProvider; class DELPHICLASS TIEBitmap; class DELPHICLASS TIEVirtualRotatedBitmap; class DELPHICLASS TIEVirtualClippedBitmap; class DELPHICLASS TIEMask; struct TIEVirtualImageInfo; struct TIEVirtualToReleaseBmp; struct TIEVirtualFreeBlock; class DELPHICLASS TIEVirtualImageList; class DELPHICLASS TIEDibbitmap; struct OIAN_MARK_ATTRIBUTES; class DELPHICLASS TIEImagingObject; class DELPHICLASS TIEImagingAnnot; class DELPHICLASS TIEImageEnAnnot; class DELPHICLASS TIEWorkBitmap; class DELPHICLASS TIOParams; class DELPHICLASS TIOMultiParams; struct TIEDicomTag; class DELPHICLASS TIEDicomTags; class DELPHICLASS TIETIFTagsReader; struct TIEEXIFMakerNoteDeviceInfo; class DELPHICLASS TIETagsHandler; class DELPHICLASS TIETagsHandlerRelocator; class DELPHICLASS TIETIFFHandler; class DELPHICLASS TIEGraphicBase; class DELPHICLASS TIEBufferedReadStream; class DELPHICLASS TIEBufferedWriteStream; class DELPHICLASS TIEImageInfo; class DELPHICLASS TIECustomMultiBitmap; class DELPHICLASS TIEMultiBitmap; class DELPHICLASS TIETIFFImage; class DELPHICLASS TIEGIFImage; class DELPHICLASS TIEJpegImage; class DELPHICLASS TIEPCXImage; class DELPHICLASS TIEBMPImage; class DELPHICLASS TIEICOImage; class DELPHICLASS TIEPNGImage; class DELPHICLASS TIETGAImage; class DELPHICLASS TIEPXMImage; class DELPHICLASS TIEJP2Image; class DELPHICLASS TIEJ2KImage; class DELPHICLASS TIEPSDImage; class DELPHICLASS TIEPDFObject; class DELPHICLASS TIEPDFRefObject; class DELPHICLASS TIEPDFBooleanObject; class DELPHICLASS TIEPDFNumericObject; class DELPHICLASS TIEPDFStringObject; class DELPHICLASS TIEPDFNameObject; class DELPHICLASS TIEPDFArrayObject; class DELPHICLASS TIEPDFDictionaryObject; class DELPHICLASS TIEPDFStreamObject; class DELPHICLASS EIERFBError; class DELPHICLASS TIERFBMessageThread; class DELPHICLASS TIERFBClient; class DELPHICLASS TIE3DES; class DELPHICLASS TIEImageListItem; class DELPHICLASS TIEImageList; class DELPHICLASS TIEEquirectangularRenderer; __interface DELPHIINTERFACE IIELoadPicture; typedef System::DelphiInterface _di_IIELoadPicture; class DELPHICLASS TIESlippyMapQueueItem; class DELPHICLASS TIESlippyMap; class DELPHICLASS TIEVCLStreamProvider; class DELPHICLASS TIEFileFormatInfo; //-- type declarations ------------------------------------------------------- #pragma pack(push,1) struct DECLSPEC_DRECORD TTIFFColor { public: System::Word R; System::Word G; System::Word B; }; #pragma pack(pop) #pragma pack(push,1) struct DECLSPEC_DRECORD TTIFFHeader { public: System::Word Id; System::Word Ver; unsigned PosIFD; }; #pragma pack(pop) typedef TTIFFHeader *PTIFFHeader; #pragma pack(push,1) struct DECLSPEC_DRECORD TTIFFTAG { public: System::Word IdTag; System::Word DataType; int DataNum; unsigned DataPos; }; #pragma pack(pop) typedef TTIFFTAG *PTIFFTAG; #pragma pack(push,1) struct DECLSPEC_DRECORD TBigTIFFTAG { public: System::Word IdTag; System::Word DataType; __int64 DataNum; __int64 DataPos; }; #pragma pack(pop) typedef System::StaticArray TIFD; typedef TIFD *PIFD; typedef System::StaticArray TBigIFD; typedef TBigIFD *PBigIFD; class PASCALIMPLEMENTATION TIETIFFIFDReader : public System::TObject { typedef System::TObject inherited; public: bool LittleEndian; System::Classes::TStream* Stream; PIFD IFD; PBigIFD BigIFD; int NumTags; __int64 StreamBase; bool IsBigTIFF; int DataPosSize; __fastcall TIETIFFIFDReader(); __fastcall virtual ~TIETIFFIFDReader(); bool __fastcall ReadIFD(int ImageIndex, __int64 Offset, int &ImageCount); void __fastcall Assign(TIETIFFIFDReader* Source); void __fastcall Clear(); __int64 __fastcall GetDataNum(int tagIndex); System::Word __fastcall GetDataType(int tagIndex); __int64 __fastcall GetDataPos(int tagIndex); __int64 __fastcall GetItem(int tagIndex, __int64 dataIndex); __int64 __fastcall GetDataLengthInBytes(int tagIndex); int __fastcall FindTAG(System::Word tagID); __int64 __fastcall ReadInteger(System::Word tagID, __int64 idx, __int64 def); double __fastcall ReadRational(System::Word tagID, int idx, double defaultValue); int __fastcall ReadArrayIntegers(Hyiedefs::pint64array &ar, System::Word tagID); Hyiedefs::TIEArrayOfByte __fastcall ReadRawDataAsArrayOfByte(System::Word tagID); void * __fastcall ReadRawData(System::Word tagID, int &Size); System::AnsiString __fastcall ReadString(System::Word tagID, bool truncToEZ = true); System::WideString __fastcall ReadWideString(System::Word tagID); }; class PASCALIMPLEMENTATION TIETIFFIFDWriter : public System::TObject { typedef System::TObject inherited; private: System::Classes::TList* Items; int __fastcall GetCount(); PTIFFTAG __fastcall GetTag(int Index); public: __fastcall TIETIFFIFDWriter(); __fastcall virtual ~TIETIFFIFDWriter(); void __fastcall AddTag(System::Word IdTag, System::Word DataType, int DataNum, unsigned DataPos); void __fastcall ReorderTags(); void __fastcall WriteSingleLong(int tag, int val); void __fastcall WriteSingleUndefined(int tag, unsigned val, System::Classes::TList* writeIfInList = (System::Classes::TList*)(0x0)); void __fastcall WriteMiniString(int tag, System::AnsiString ss); void __fastcall WriteMiniByteString(int tag, System::AnsiString ss); void __fastcall WriteSingleShort(int tag, System::Word val, System::Classes::TList* writeIfInList = (System::Classes::TList*)(0x0)); void __fastcall WriteSingleByte(int tag, System::Byte val); void __fastcall WriteSingleRational(System::Classes::TStream* Stream, int tag, double value, bool &Aborting, System::Classes::TList* writeIfInList = (System::Classes::TList*)(0x0)); void __fastcall WriteMultiRational(System::Classes::TStream* Stream, int tag, double *values, const System::NativeInt values_High, bool &Aborting); void __fastcall WriteString(System::Classes::TStream* Stream, int tag, System::AnsiString ss, bool &Aborting); void __fastcall WriteWideString(System::Classes::TStream* Stream, int tag, System::WideString ss, bool &Aborting); void __fastcall WriteArrayOfByte(System::Classes::TStream* Stream, System::Word Tag, System::Word DataType, Hyiedefs::TIEArrayOfByte Buffer, bool &Aborting); void __fastcall WriteMultiLongEx(System::Classes::TStream* Stream, int tag, unsigned *arr, const System::NativeInt arr_High, int arraylen, bool &Aborting); void __fastcall WriteMultiShort(System::Classes::TStream* Stream, int tag, const System::Word *vals, const System::NativeInt vals_High, bool &Aborting); __property int Count = {read=GetCount, nodefault}; __property PTIFFTAG Tag[int Index] = {read=GetTag}; }; class PASCALIMPLEMENTATION TIEMarkerList : public System::TObject { typedef System::TObject inherited; private: System::Classes::TList* fData; System::Classes::TList* fType; int __fastcall GetCount(); char * __fastcall GetMarkerData(int idx); System::Classes::TStream* __fastcall GetMarkerStream(int idx); System::Byte __fastcall GetMarkerType(int idx); System::Word __fastcall GetMarkerLength(int idx); int __fastcall SortCompare(int Index1, int Index2); void __fastcall SortSwap(int Index1, int Index2); public: __fastcall TIEMarkerList(); __fastcall virtual ~TIEMarkerList(); int __fastcall AddMarker(System::Byte marker, char * data, System::Word datalen); void __fastcall SetMarker(int idx, System::Byte marker, char * data, System::Word datalen); void __fastcall InsertMarker(int idx, char * data, System::Byte marker, System::Word datalen); void __fastcall Clear(); __property char * MarkerData[int idx] = {read=GetMarkerData}; __property System::Classes::TStream* MarkerStream[int idx] = {read=GetMarkerStream}; __property System::Word MarkerLength[int idx] = {read=GetMarkerLength}; __property System::Byte MarkerType[int idx] = {read=GetMarkerType}; int __fastcall IndexOf(System::Byte marker); void __fastcall SaveToStream(System::Classes::TStream* Stream); void __fastcall LoadFromStream(System::Classes::TStream* Stream); void __fastcall DeleteMarker(int idx); void __fastcall DeleteMarkerInstances(System::Byte markerType); __property int Count = {read=GetCount, nodefault}; void __fastcall Assign(TIEMarkerList* Source); void __fastcall Sort(); }; #pragma pack(push,1) struct DECLSPEC_DRECORD TIPTCInfo { public: int fRecord; int fDataSet; int fLength; }; #pragma pack(pop) typedef TIPTCInfo *PIPTCInfo; class PASCALIMPLEMENTATION TIEIPTCInfoList : public System::TObject { typedef System::TObject inherited; private: System::Classes::TList* fBuffer; System::Classes::TList* fInfo; bool fUserChanged; System::UnicodeString __fastcall GetStrings(int idx); void __fastcall SetStrings(int idx, System::UnicodeString Value); int __fastcall GetRecordNumber(int idx); void __fastcall SetRecordNumber(int idx, int Value); int __fastcall GetDataSet(int idx); void __fastcall SetDataSet(int idx, int Value); int __fastcall GetCount(); public: __fastcall TIEIPTCInfoList(); __fastcall virtual ~TIEIPTCInfoList(); __property System::UnicodeString StringItem[int idx] = {read=GetStrings, write=SetStrings}; __property int RecordNumber[int idx] = {read=GetRecordNumber, write=SetRecordNumber}; __property int DataSet[int idx] = {read=GetDataSet, write=SetDataSet}; int __fastcall AddStringItem(int ARecordNumber, int ADataSet, System::AnsiString Value); int __fastcall AddBufferItem(int ARecordNumber, int ADataSet, void * Buffer, int BufferLength); void __fastcall InsertStringItem(int idx, int ARecordNumber, int ADataSet, System::AnsiString Value); void __fastcall Clear(); int __fastcall IndexOf(int ARecordNumber, int ADataSet); void __fastcall DeleteItem(int idx); __property int Count = {read=GetCount, nodefault}; void __fastcall Assign(TIEIPTCInfoList* Source); void __fastcall SaveToStream(System::Classes::TStream* Stream); void __fastcall LoadFromStream(System::Classes::TStream* Stream); bool __fastcall LoadFromStandardBuffer(void * Buffer, int BufferLength); void __fastcall SaveToStandardBuffer(void * &Buffer, int &BufferLength, bool WriteHeader); __property bool UserChanged = {read=fUserChanged, write=fUserChanged, nodefault}; void * __fastcall GetItemData(int idx); int __fastcall GetItemLength(int idx); }; class PASCALIMPLEMENTATION TIEBaseBitmap : public System::TObject { typedef System::TObject inherited; protected: Hyieutils::TIEDataAccess fAccess; virtual void * __fastcall GetScanLine(int Row) = 0 ; virtual int __fastcall GetBitCount() = 0 ; virtual int __fastcall GetHeight() = 0 ; virtual int __fastcall GetWidth() = 0 ; virtual void __fastcall SetWidth(int Value) = 0 ; virtual void __fastcall SetHeight(int Value) = 0 ; virtual Hyieutils::TIEPixelFormat __fastcall GetPixelFormat() = 0 ; virtual int __fastcall GetRowLen() = 0 ; virtual void * __fastcall GetPaletteBuffer() = 0 ; virtual Hyiedefs::TRGB __fastcall GetPalette(int index) = 0 ; virtual void __fastcall SetPalette(int index, Hyiedefs::TRGB Value) = 0 ; virtual int __fastcall GetPaletteLen() = 0 ; virtual int __fastcall GetPaletteUsed() = 0 ; virtual void __fastcall SetPaletteUsed(int Value) = 0 ; public: __property void * Scanline[int row] = {read=GetScanLine}; __property int BitCount = {read=GetBitCount, nodefault}; __property int Width = {read=GetWidth, write=SetWidth, nodefault}; __property int Height = {read=GetHeight, write=SetHeight, nodefault}; __property Hyieutils::TIEPixelFormat PixelFormat = {read=GetPixelFormat, nodefault}; virtual bool __fastcall Allocate(int ImageWidth, int ImageHeight, Hyieutils::TIEPixelFormat ImagePixelFormat) = 0 ; virtual void __fastcall Assign(System::TObject* Source) = 0 ; virtual void __fastcall AssignImage(TIEBaseBitmap* Source) = 0 ; __property int RowLen = {read=GetRowLen, nodefault}; __property Hyieutils::TIEDataAccess Access = {read=fAccess, write=fAccess, nodefault}; __property Hyiedefs::TRGB Palette[int index] = {read=GetPalette, write=SetPalette}; __property void * PaletteBuffer = {read=GetPaletteBuffer}; __property int PaletteUsed = {read=GetPaletteUsed, write=SetPaletteUsed, nodefault}; __property int PaletteLength = {read=GetPaletteLen, nodefault}; virtual void __fastcall CopyPaletteTo(TIEBaseBitmap* Dest) = 0 ; public: /* TObject.Create */ inline __fastcall TIEBaseBitmap() : System::TObject() { } /* TObject.Destroy */ inline __fastcall virtual ~TIEBaseBitmap() { } }; struct DECLSPEC_DRECORD IE_PROFILE { public: unsigned dwType; void *pProfileData; unsigned cbDataSize; }; typedef IE_PROFILE *IE_PPROFILE; typedef Winapi::Windows::THandle IE_HPROFILE; typedef unsigned __int64 *IE_PHPROFILE; typedef Winapi::Windows::THandle IE_HTRANSFORM; typedef System::LongBool __stdcall (*TIE_ICMProgressProcCallback)(unsigned ulMax, unsigned ulCurrent, __int64 ulCallbackData); typedef IE_HPROFILE __stdcall (*TIE_OpenColorProfile)(IE_PPROFILE pProfile, unsigned dwDesiredAccess, unsigned dwShareMode, unsigned dwCreationMode); typedef System::LongBool __stdcall (*TIE_CloseColorProfile)(IE_HPROFILE hProfile); typedef IE_HTRANSFORM __stdcall (*TIE_CreateMultiProfileTransform)(IE_PHPROFILE pahProfiles, unsigned nProfiles, unsigned* padwIntent, unsigned nIntents, unsigned dwFlags, unsigned indexPreferredCMM); typedef System::LongBool __stdcall (*TIE_DeleteColorTransform)(IE_HTRANSFORM hColorTransform); typedef System::LongBool __stdcall (*TIE_TranslateColors)(IE_HTRANSFORM hColorTransform, void * paInputColors, unsigned nColors, unsigned ctInput, void * paOutputColors, unsigned ctOutput); class PASCALIMPLEMENTATION TIEICC : public System::TObject { typedef System::TObject inherited; private: bool fUseLCMS; Winapi::Windows::PByte fRaw; int fRawLen; void *fProfile; Hyieutils::TIEMemStream* fProfileStream; Winapi::Windows::THandle fMSProfile; bool fApplied; void *fTransform; int fInputFormat; int fOutputFormat; TIEICC* fDestination; int fIntent; int fFlags; Winapi::Windows::THandle fMSTransform; System::AnsiString fCopyright; System::AnsiString fDescription; System::AnsiString fInputColorSpace; System::AnsiString fOutputColorSpace; void __fastcall OpenProfileFromRaw(); void __fastcall CloseProfileFromRaw(); void __fastcall ExtractInfo(); public: __property Winapi::Windows::THandle MSTransform = {read=fMSTransform}; __fastcall TIEICC(bool UseLCMS); __fastcall virtual ~TIEICC(); void __fastcall LoadFromBuffer(void * buffer, int bufferlen); void __fastcall Clear(); void __fastcall SaveToStream(System::Classes::TStream* Stream, bool StandardICC); void __fastcall LoadFromStream(System::Classes::TStream* Stream, bool StandardICC); void __fastcall LoadFromFile(const System::UnicodeString FileName); void __fastcall Assign(TIEICC* source); bool __fastcall IsValid(); __property bool IsApplied = {read=fApplied, nodefault}; __property Winapi::Windows::PByte Raw = {read=fRaw}; __property int RawLength = {read=fRawLen, nodefault}; void __fastcall Assign_sRGBProfile(); void __fastcall Assign_LabProfile(double WhitePoint_x, double WhitePoint_y, double WhitePoint_Y_); void __fastcall Assign_LabProfileFromTemp(int TempK); void __fastcall Assign_LabProfileD50(); void __fastcall Assign_XYZProfile(); void __fastcall Assign_AdobeRGB1998(); void __fastcall Assign_CMYKProfile(); bool __fastcall InitTransform(TIEICC* Destination, int InputFormat, int OutputFormat, int Intent, int Flags); void __fastcall FreeTransform(); bool __fastcall Transform(TIEICC* Destination, int InputFormat, int OutputFormat, int Intent, int Flags, void * InputBuffer, void * OutputBuffer, int ImageWidth); bool __fastcall Apply(TIEBaseBitmap* SourceBitmap, int SourceFormat, TIEBaseBitmap* DestinationBitmap, int DestinationFormat, TIEICC* DestinationProfile, int Intent, int Flags); bool __fastcall Apply2(TIEBaseBitmap* Bitmap, int SourceFormat, int DestinationFormat, TIEICC* DestinationProfile, int Intent, int Flags); bool __fastcall ConvertBitmap(TIEBaseBitmap* Bitmap, Hyieutils::TIEPixelFormat DestPixelFormat, TIEICC* DestProfile); bool __fastcall IsTransforming(); bool __fastcall CheckTransform(int InputFormat)/* overload */; bool __fastcall CheckTransform(Hyiedefs::TIEColorSpace InputFormat)/* overload */; __property System::AnsiString Copyright = {read=fCopyright}; __property System::AnsiString Description = {read=fDescription}; __property System::AnsiString InputColorSpace = {read=fInputColorSpace}; __property System::AnsiString OutputColorSpace = {read=fOutputColorSpace}; }; enum DECLSPEC_DENUM TIELocation : unsigned char { ieMemory, ieFile, ieTBitmap }; enum DECLSPEC_DENUM TIEMemoryAllocator : unsigned char { iemaVCL, iemaSystem, iemaAuto }; enum DECLSPEC_DENUM TIEBitmapOrigin : unsigned char { ieboBOTTOMLEFT, ieboTOPLEFT }; typedef void __fastcall (__closure *TIEMultiCallBack)(TIEBitmap* Bitmap, System::TObject* &IOParams, int ImDpiX, int ImDpiY); typedef void __fastcall (__closure *TIERenderVirtualPixel)(System::TObject* Sender, int SrcX, int SrcY, void *outval); class PASCALIMPLEMENTATION TIEVirtualBitmapProvider : public System::TObject { typedef System::TObject inherited; public: virtual void __fastcall Render(TIEBitmap* Container, TIEBitmap* DestBitmap, int DestWidth, int DestHeight, int DestX1, int DestY1, int DestX2, int DestY2, System::PInteger SrcCols, System::PInteger SrcRows, int Transparency, Hyieutils::TIERenderOperation RenderOperation, double Opacity) = 0 ; virtual void * __fastcall GetSegment(TIEBitmap* Container, int Row, int Col, int Width) = 0 ; public: /* TObject.Create */ inline __fastcall TIEVirtualBitmapProvider() : System::TObject() { } /* TObject.Destroy */ inline __fastcall virtual ~TIEVirtualBitmapProvider() { } }; class PASCALIMPLEMENTATION TIEBitmap : public TIEBaseBitmap { typedef TIEBaseBitmap inherited; private: Hyieutils::TIEFileBuffer* fmemmap; void *fWorkingMap; Hyiedefs::PIERGBPalette fRGBPalette; int fRGBPaletteLen; int fPaletteUsed; TIEBitmap* fAlphaChannel; void *fMemory; void *fRealMemory; Vcl::Graphics::TBitmap* fBitmap; Hyiedefs::TIEArrayOfPointer fBitmapScanlines; System::Classes::TList* fScanlinesToUnMapPtr; System::Classes::TList* fScanlinesToUnMapRow; TIEBitmapOrigin fOrigin; System::UnicodeString fFilename; Hyieutils::TIOFileType fFileType; int fWidth; int fHeight; int fBitCount; int fChannelCount; __int64 fRowLen; Hyieutils::TIEPixelFormat fPixelFormat; bool fIsAlpha; TIELocation fLocation; bool fFull; bool fEncapsulatedFromTBitmap; bool fEncapsulatedFromMemory; __int64 fMinFileSize; Hyieutils::TIEDitherMethod fDefaultDitherMethod; TIEICC* fColorProfile; TIEICC* fRenderColorProfile; double fBlackValue; double fWhiteValue; System::StaticArray fChannelOffset; bool fEnableChannelOffset; int fContrast; TIEMask* fAdjustmentsMask; int fBitAlignment; TIEMemoryAllocator fMemoryAllocator; bool fFullReallocate; int fCanvasCurrentAlpha; Iegdiplus::TIECanvas* fIECanvas; System::Classes::TNotifyEvent fOnChanged; bool fModified; int fFragmentsCount; int fRowsPerFragment; Hyiedefs::PPointerArray fFragments; TIERenderVirtualPixel fOnRenderVirtualPixel; System::TObject* fVirtualBitmapProvider; void *fVirtualBitmapRowBuffer; TIEBitmap* fROIOriginalBitmap; Winapi::Windows::TRect fROIOriginalRect; Iegdiplus::TIECanvas* fROICanvas; bool fIsResource; System::Contnrs::TObjectList* fSavedBitmaps; bool __fastcall AllocateImage(); void __fastcall SetPixelFormat(Hyieutils::TIEPixelFormat Value); void __fastcall ConvertToPixelFormat(Hyieutils::TIEPixelFormat DestPixelFormat); bool __fastcall GetPixels_ie1g(int x, int y); System::Byte __fastcall GetPixels_ie8(int x, int y); System::Word __fastcall GetPixels_ie16g(int x, int y); Hyiedefs::TRGB __fastcall GetPixels_ie24RGB(int x, int y); Hyiedefs::TRGBA __fastcall GetPixels_ie32RGB(int x, int y); float __fastcall GetPixels_ie32f(int x, int y); Hyiedefs::TCMYK __fastcall GetPixels_ieCMYK(int x, int y); Hyiedefs::TCIELab __fastcall GetPixels_ieCIELab(int x, int y); Hyiedefs::TRGB48 __fastcall GetPixels_ie48RGB(int x, int y); Hyiedefs::PRGB __fastcall GetPPixels_ie24RGB(int x, int y); Hyiedefs::PRGBA __fastcall GetPPixels_ie32RGB(int x, int y); Hyiedefs::PRGB48 __fastcall GetPPixels_ie48RGB(int x, int y); Hyiedefs::TRGB __fastcall GetPixels(int x, int y); void __fastcall SetPixels(int x, int y, Hyiedefs::TRGB value); void __fastcall SetPixels_ie1g(int x, int y, bool Value); void __fastcall SetPixels_ie8(int x, int y, System::Byte Value); void __fastcall SetPixels_ie16g(int x, int y, System::Word Value); void __fastcall SetPixels_ie24RGB(int x, int y, Hyiedefs::TRGB Value); void __fastcall SetPixels_ie32RGB(int x, int y, Hyiedefs::TRGBA Value); void __fastcall SetPixels_ie32f(int x, int y, float Value); void __fastcall SetPixels_ieCMYK(int x, int y, Hyiedefs::TCMYK Value); void __fastcall SetPixels_ieCIELab(int x, int y, Hyiedefs::TCIELab Value); void __fastcall SetPixels_ie48RGB(int x, int y, const Hyiedefs::TRGB48 &Value); System::Byte __fastcall GetAlpha(int x, int y); void __fastcall SetAlpha(int x, int y, System::Byte Value); void __fastcall SetLocation(TIELocation Value); void __fastcall UpdateTBitmapPalette(); void __fastcall CopyPaletteFromTBitmap(Vcl::Graphics::TBitmap* source, int colors); bool __fastcall GetHasAlphaChannel(); void __fastcall FreeBitmapScanlines(); void __fastcall BuildBitmapScanlines(); Vcl::Graphics::TBitmap* __fastcall GetVclBitmap(); void __fastcall SetChannelOffset(int idx, int value); int __fastcall GetChannelOffset(int idx); void __fastcall SetBitAlignment(int value); int __fastcall GetChannelCount(); void __fastcall SetChannelCount(int Value); void __fastcall SetCanvasCurrentAlpha(int v); void __fastcall FragmentedAlloc(); void __fastcall FreeFragments(); void __fastcall AllocateMemory(__int64 size, void * &StartBuffer, void * &AlignedBuffer); void __fastcall SetOrigin(TIEBitmapOrigin value); void __fastcall SetVirtualBitmapProvider(System::TObject* value); void __fastcall ReleaseROI(); void __fastcall DestroyMe(System::TObject* Sender); void * __fastcall GetMemory(); TIEMask* __fastcall GetAdjustmentsMask(); TIOParams* __fastcall GetParams(); bool __fastcall GetParamsEnabled(); void __fastcall SetParamsEnabled(const bool Value); void __fastcall UpdateOwner(); void __fastcall SetModified(bool Value); void __fastcall AssignMetaInfo(TIEBitmap* Source); void __fastcall BlendAlpha(System::Uitypes::TColor BackgroundColor); protected: TIOParams* fIOParams; virtual bool __fastcall GetIsVirtual(); Vcl::Graphics::TCanvas* __fastcall GetCanvas(); Iegdiplus::TIECanvas* __fastcall GetIECanvas(); virtual TIEBitmap* __fastcall GetAlphaChannel(); virtual TIEBitmap* __fastcall GetAlphaChannelOpt(); virtual int __fastcall GetBitCount(); void __fastcall SetBitCount(int Value); virtual int __fastcall GetWidth(); virtual int __fastcall GetHeight(); virtual void __fastcall SetWidth(int Value); virtual void __fastcall SetHeight(int Value); virtual int __fastcall GetRowLen(); void __fastcall SetRowLen(int Value); virtual void * __fastcall GetScanLine(int Row); virtual Hyieutils::TIEPixelFormat __fastcall GetPixelFormat(); virtual Hyiedefs::TRGB __fastcall GetPalette(int index); virtual void * __fastcall GetPaletteBuffer(); virtual void __fastcall SetPalette(int index, Hyiedefs::TRGB Value); virtual int __fastcall GetPaletteLen(); virtual int __fastcall GetPaletteUsed(); virtual void __fastcall SetPaletteUsed(int Value); void __fastcall FreeAllMaps(); virtual void __fastcall Render_ie24RGB(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, Hyieutils::TIERenderOperation RenderOperation); virtual void __fastcall Render_ie24RGB_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, Hyieutils::TIERenderOperation RenderOperation, double Opacity); virtual void __fastcall Render_ie32RGB(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, Hyieutils::TIERenderOperation RenderOperation); virtual void __fastcall Render_ie32RGB_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, Hyieutils::TIERenderOperation RenderOperation, double Opacity); virtual void __fastcall Render_ie1g(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground); virtual void __fastcall Render_ie1g_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, double Opacity); virtual void __fastcall Render_ie8g(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground); virtual void __fastcall Render_ie8g_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, double Opacity); virtual void __fastcall Render_ie8p(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground); virtual void __fastcall Render_ie8p_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, double Opacity); virtual void __fastcall Render_ie16g(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground); virtual void __fastcall Render_ie16g_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, double Opacity); virtual void __fastcall Render_ie32f(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground); virtual void __fastcall Render_ie32f_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, double Opacity); virtual void __fastcall Render_ieCMYK(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground); virtual void __fastcall Render_ieCMYK_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, double Opacity); virtual void __fastcall Render_ieCIELab(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground); virtual void __fastcall Render_ieCIELab_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, double Opacity); virtual void __fastcall Render_ie48RGB(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, Hyieutils::TIERenderOperation RenderOperation); virtual void __fastcall Render_ie48RGB_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, Hyieutils::TIERenderOperation RenderOperation, double Opacity); virtual void __fastcall Render_ieVirtual(TIEBitmap* ABitmap, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, Hyieutils::TIERenderOperation RenderOperation); virtual void __fastcall Render_ieVirtual_alpha(TIEBitmap* ABitmap, int Transparency, bool UseAlpha, Winapi::Windows::PByte SimAlphaRow, System::PInteger XLUT, System::PInteger YLUT, int xSrc, int ySrc, int xDst, int yDst, int cx1, int cy1, int cx2, int cy2, int rx, int ry, bool SolidBackground, Hyieutils::TIERenderOperation RenderOperation, double Opacity); public: System::Classes::TComponent* fOwner; __fastcall virtual TIEBitmap()/* overload */; __fastcall TIEBitmap(int ImageWidth, int ImageHeight, Hyieutils::TIEPixelFormat ImagePixelFormat)/* overload */; __fastcall TIEBitmap(const System::UnicodeString FileName, TIOParams* IOParams)/* overload */; __fastcall TIEBitmap(TIEBitmap* image)/* overload */; __fastcall TIEBitmap(TIEBitmap* image, const Winapi::Windows::TRect &Rect)/* overload */; __fastcall TIEBitmap(Vcl::Graphics::TBitmap* image, const Winapi::Windows::TRect &Rect)/* overload */; __fastcall TIEBitmap(void * Buffer, int BufferSize, int Format)/* overload */; __fastcall TIEBitmap(int ImageWidth, int ImageHeight, TIELocation ImageLocation); __fastcall virtual ~TIEBitmap(); TIEBitmap* __fastcall CreateROIBitmap(const Winapi::Windows::TRect &Rect, Hyieutils::TIEPixelFormat ROIPixelFormat = (Hyieutils::TIEPixelFormat)(0x0), bool PerformAlphaCompositing = false); Iegdiplus::TIECanvas* __fastcall CreateROICanvas(const Winapi::Windows::TRect &Rect, bool AntiAlias = true, bool UseGDIPlus = true, bool PerformAlphaCompositing = false)/* overload */; Iegdiplus::TIECanvas* __fastcall CreateROICanvas(bool AntiAlias = true, bool UseGDIPlus = true, bool PerformAlphaCompositing = false)/* overload */; __property System::UnicodeString Filename = {read=fFilename, write=fFilename}; __property Hyieutils::TIOFileType FileType = {read=fFileType, write=fFileType, nodefault}; __property int Width = {read=GetWidth, write=SetWidth, nodefault}; __property int Height = {read=GetHeight, write=SetHeight, nodefault}; __property Hyieutils::TIEPixelFormat PixelFormat = {read=GetPixelFormat, write=SetPixelFormat, nodefault}; virtual void __fastcall Assign(System::TObject* Source); virtual void __fastcall AssignImage(TIEBaseBitmap* Source); void __fastcall AssignRect(System::TObject* Source, const Winapi::Windows::TRect &SourceRect); __property void * ScanLine[int Row] = {read=GetScanLine}; virtual void * __fastcall GetSegment(int Row, int Col, int Width); void __fastcall UpdateFromTBitmap(); void __fastcall AdjustCanvasOrientation(); void __fastcall StretchValues(); void __fastcall FixContrast(); void __fastcall FixChannelOffset(); bool __fastcall CheckFormat(Hyieutils::TIEPixelFormatSet AllowedFormats, bool AutoConvert); __property void * Memory = {read=GetMemory}; Ievision::_di_TIEVisionImage __fastcall GetIEVisionImage(); void __fastcall AssignIEVisionImage(Ievision::_di_TIEVisionImage Source); bool __fastcall Read(const System::UnicodeString FileName, TIOParams* IOParams = (TIOParams*)(0x0), bool bCheckUnknown = true)/* overload */; bool __fastcall Read(System::Classes::TStream* Stream, Hyieutils::TIOFileType FileType = 0x0, TIOParams* IOParams = (TIOParams*)(0x0))/* overload */; bool __fastcall Read(void * Buffer, int BufferSize, Hyieutils::TIOFileType FileType = 0x0, TIOParams* IOParams = (TIOParams*)(0x0))/* overload */; bool __fastcall Write(const System::UnicodeString FileName, TIOParams* IOParams = (TIOParams*)(0x0))/* overload */; bool __fastcall Write(System::Classes::TStream* Stream, Hyieutils::TIOFileType FileType, TIOParams* IOParams = (TIOParams*)(0x0))/* overload */; void __fastcall SaveState(); void __fastcall RestoreState(); System::AnsiString __fastcall GetHash(Hyieutils::TIEHashAlgorithm Algorithm = (Hyieutils::TIEHashAlgorithm)(0x8003)); __property Hyiedefs::TIEArrayOfPointer TBitmapScanlines = {read=fBitmapScanlines}; __property Vcl::Graphics::TCanvas* Canvas = {read=GetCanvas}; __property Iegdiplus::TIECanvas* IECanvas = {read=GetIECanvas}; __property bool EncapsulatedFromTBitmap = {read=fEncapsulatedFromTBitmap, write=fEncapsulatedFromTBitmap, nodefault}; __property bool EncapsulatedFromMemory = {read=fEncapsulatedFromMemory, write=fEncapsulatedFromMemory, nodefault}; __property int Rowlen = {read=GetRowLen, write=SetRowLen, nodefault}; virtual bool __fastcall Allocate(int ImageWidth, int ImageHeight, Hyieutils::TIEPixelFormat ImagePixelFormat = (Hyieutils::TIEPixelFormat)(0x5)); void __fastcall EncapsulateTBitmap(Vcl::Graphics::TBitmap* obj, bool DoFreeImage = false); void __fastcall EncapsulateMemory(void * mem, int bmpWidth, int bmpHeight, Hyieutils::TIEPixelFormat bmpPixelFormat, bool DoFreeImage, TIEBitmapOrigin Origin = (TIEBitmapOrigin)(0x0)); void __fastcall FreeImage(bool freeAlpha = true); void __fastcall SwitchTo(TIEBitmap* Target); __property TIEBitmap* AlphaChannel = {read=GetAlphaChannel}; __property TIEBitmap* AlphaChannelOpt = {read=GetAlphaChannelOpt}; void __fastcall SyncAlphaChannel(bool AntiAlias = true); void __fastcall ReplaceAlphaChannel(TIEBitmap* Value); TIEBitmap* __fastcall DetachAlphaChannel(bool CreateIfNotExists = false); __property bool IsAlpha = {read=fIsAlpha, write=fIsAlpha, nodefault}; __property TIELocation Location = {read=fLocation, write=SetLocation, nodefault}; void __fastcall CopyToTBitmap(Vcl::Graphics::TBitmap* Dest); void __fastcall CopyWithMask1(TIEBitmap* Dest, TIEMask* SourceMask, System::Uitypes::TColor Background)/* overload */; void __fastcall CopyWithMask1(TIEBitmap* Dest, TIEMask* SourceMask)/* overload */; void __fastcall CopyWithMask2(TIEBitmap* Dest, TIEMask* DestMask); void __fastcall CopyFromMemory(void * SrcBuffer, int SrcWidth, int SrcHeight, Hyieutils::TIEPixelFormat SrcPixelFormat, TIEBitmapOrigin SrcOrigin, int SrcRowLen); void __fastcall CopyFromTBitmap(Vcl::Graphics::TBitmap* Source); void __fastcall CopyFromTIEMask(TIEMask* Source); void __fastcall CopyToTIEMask(TIEMask* Dest); void __fastcall CopyRectTo(TIEBitmap* Dest, int SrcX, int SrcY, int DstX, int DstY, int RectWidth, int RectHeight, bool CopyAlpha = false); bool __fastcall CopyToClipboard(bool IncludeImageEnFormat = true, int DpiX = 0xc8, int DpiY = 0xc8); bool __fastcall PasteFromClipboard(); void __fastcall MergeAlphaRectTo(TIEBitmap* Dest, int SrcX, int SrcY, int DstX, int DstY, int RectWidth, int RectHeight); virtual void * __fastcall GetRow(int Row); virtual void __fastcall FreeRow(int Row); void __fastcall Resize(int NewWidth, int NewHeight, double BackgroundValue = 0.000000E+00, int FillAlpha = 0xff, Hyieutils::TIEHAlign HorizAlign = (Hyieutils::TIEHAlign)(0x0), Hyieutils::TIEVAlign VertAlign = (Hyieutils::TIEVAlign)(0x0))/* overload */; void __fastcall Resize(int AddLeft, int AddTop, int AddRight, int AddBottom, double BackgroundValue, int FillAlpha = 0xff)/* overload */; void __fastcall Resample(int NewWidth, int NewHeight, Hyiedefs::TResampleFilter FilterType = (Hyiedefs::TResampleFilter)(0x0), bool bMaintainAspectRatio = false)/* overload */; void __fastcall Resample(double ScaleBy, Hyiedefs::TResampleFilter FilterType = (Hyiedefs::TResampleFilter)(0x0))/* overload */; void __fastcall Rotate(double Angle, Hyiedefs::TIEAntialiasMode AntiAliasMode = (Hyiedefs::TIEAntialiasMode)(0x1), System::Uitypes::TColor BackgroundColor = (System::Uitypes::TColor)(0xffffff))/* overload */; void __fastcall Rotate(double Angle, bool AntiAlias, Hyiedefs::TIEAntialiasMode AntialiasMode, System::Uitypes::TColor BackgroundColor)/* overload */; void __fastcall RotateEx(double Angle, Hyiedefs::TIEAntialiasMode AntialiasMode, System::Uitypes::TColor BackgroundColor, Hyiedefs::TIEProgressEvent OnProgress, System::TObject* Sender); void __fastcall Flip(Hyiedefs::TFlipDir Dir); void __fastcall Crop(int x1, int y1, int x2, int y2)/* overload */; void __fastcall Crop(const Winapi::Windows::TRect &Rect)/* overload */; bool __fastcall CropAlpha(); __property Vcl::Graphics::TBitmap* VclBitmap = {read=GetVclBitmap, write=fBitmap}; void __fastcall MoveRegion(int x1, int y1, int x2, int y2, int DstX, int DstY, double BackgroundValue, bool FillSource = true); void __fastcall CopyFromTDibBitmap(TIEDibbitmap* Source); void __fastcall MergeFromTDibBitmap(TIEDibbitmap* Source, int x, int y); void __fastcall CopyToTDibBitmap(TIEDibbitmap* Dest, int source_x, int source_y, int sourceWidth, int sourceHeight); void __fastcall CopyFromDIB(Winapi::Windows::THandle Source)/* overload */; void __fastcall CopyFromDIB(void * BitmapInfo, void * Pixels = (void *)(0x0))/* overload */; Winapi::Windows::THandle __fastcall CreateDIB()/* overload */; Winapi::Windows::THandle __fastcall CreateDIB(int x1, int y1, int x2, int y2)/* overload */; __property bool Pixels_ie1g[int x][int y] = {read=GetPixels_ie1g, write=SetPixels_ie1g}; __property System::Byte Pixels_ie8[int x][int y] = {read=GetPixels_ie8, write=SetPixels_ie8}; __property System::Word Pixels_ie16g[int x][int y] = {read=GetPixels_ie16g, write=SetPixels_ie16g}; __property Hyiedefs::TRGB Pixels_ie24RGB[int x][int y] = {read=GetPixels_ie24RGB, write=SetPixels_ie24RGB}; __property Hyiedefs::TRGBA Pixels_ie32RGB[int x][int y] = {read=GetPixels_ie32RGB, write=SetPixels_ie32RGB}; __property float Pixels_ie32f[int x][int y] = {read=GetPixels_ie32f, write=SetPixels_ie32f}; __property Hyiedefs::TCMYK Pixels_ieCMYK[int x][int y] = {read=GetPixels_ieCMYK, write=SetPixels_ieCMYK}; __property Hyiedefs::TCIELab Pixels_ieCIELab[int x][int y] = {read=GetPixels_ieCIELab, write=SetPixels_ieCIELab}; __property Hyiedefs::TRGB48 Pixels_ie48RGB[int x][int y] = {read=GetPixels_ie48RGB, write=SetPixels_ie48RGB}; __property Hyiedefs::PRGB PPixels_ie24RGB[int x][int y] = {read=GetPPixels_ie24RGB}; __property Hyiedefs::PRGBA PPixels_ie32RGB[int x][int y] = {read=GetPPixels_ie32RGB}; __property Hyiedefs::PRGB48 PPixels_ie48RGB[int x][int y] = {read=GetPPixels_ie48RGB}; __property Hyiedefs::TRGB Pixels[int x][int y] = {read=GetPixels, write=SetPixels}; __property System::Byte Alpha[int x][int y] = {read=GetAlpha, write=SetAlpha}; void __fastcall RenderToTIEBitmap(TIEBitmap* ABitmap, System::PInteger &XLUT, System::PInteger &YLUT, Winapi::Windows::PRect UpdRect, int xDst, int yDst, int dxDst, int dyDst, int xSrc, int ySrc, int dxSrc, int dySrc, bool EnableAlpha, bool SolidBackground, int Transparency, Hyiedefs::TResampleFilter Filter, bool FreeTables, Hyieutils::TIERenderOperation RenderOperation = (Hyieutils::TIERenderOperation)(0x0), double Opacity = 1.000000E+00); void __fastcall RenderToTBitmap(Vcl::Graphics::TBitmap* ABitmap, System::PInteger &XLUT, System::PInteger &YLUT, Winapi::Windows::PRect UpdRect, int xDst, int yDst, int dxDst, int dyDst, int xSrc, int ySrc, int dxSrc, int dySrc, bool EnableAlpha, bool SolidBackground, int Transparency, Hyiedefs::TResampleFilter Filter, bool FreeTables, Hyieutils::TIERenderOperation RenderOperation = (Hyieutils::TIERenderOperation)(0x0), double Opacity = 1.000000E+00); void __fastcall RenderToTBitmapEx(Vcl::Graphics::TBitmap* Dest, int xDst, int yDst, int dxDst, int dyDst, int xSrc, int ySrc, int dxSrc, int dySrc, int Transparency = 0xff, Hyiedefs::TResampleFilter Filter = (Hyiedefs::TResampleFilter)(0x0), Hyieutils::TIERenderOperation RenderOperation = (Hyieutils::TIERenderOperation)(0x0), double Opacity = 1.000000E+00)/* overload */; void __fastcall RenderToTBitmapEx(Vcl::Graphics::TBitmap* Dest, int xDst, int yDst, int dxDst, int dyDst, int xSrc, int ySrc, int dxSrc, int dySrc, bool bEnableAlpha, int Transparency, Hyiedefs::TResampleFilter Filter, Hyieutils::TIERenderOperation RenderOperation = (Hyieutils::TIERenderOperation)(0x0), double Opacity = 1.000000E+00)/* overload */; void __fastcall RenderToTIEBitmapEx(TIEBitmap* Dest, int xDst, int yDst, int dxDst, int dyDst, int xSrc, int ySrc, int dxSrc, int dySrc, bool bEnableAlpha = true, int Transparency = 0xff, Hyiedefs::TResampleFilter Filter = (Hyiedefs::TResampleFilter)(0x0), Hyieutils::TIERenderOperation RenderOperation = (Hyieutils::TIERenderOperation)(0x0), double Opacity = 1.000000E+00); void __fastcall RenderToCanvasWithAlpha(Vcl::Graphics::TCanvas* Dest, int xDst, int yDst, int dxDst, int dyDst, int xSrc, int ySrc, int dxSrc, int dySrc, int Transparency = 0xff, Hyiedefs::TResampleFilter Filter = (Hyiedefs::TResampleFilter)(0x0), Hyieutils::TIERenderOperation RenderOperation = (Hyieutils::TIERenderOperation)(0x0), double Opacity = 1.000000E+00); void __fastcall StretchRectTo(TIEBitmap* Dest, int xDst, int yDst, int dxDst, int dyDst, int xSrc, int ySrc, int dxSrc, int dySrc, Hyiedefs::TResampleFilter Filter, int Transparency = 0xff, double Opacity = 1.000000E+00); void __fastcall RenderToCanvas(Vcl::Graphics::TCanvas* DestCanvas, int xDst, int yDst, int dxDst, int dyDst, Hyiedefs::TResampleFilter Filter, double Gamma = 0.000000E+00, System::Uitypes::TColor BackgroundColor = (System::Uitypes::TColor)(0xffffff)); void __fastcall DrawToCanvas(Vcl::Graphics::TCanvas* DestCanvas, int xDst, int yDst); void __fastcall DrawToCanvasWithAlpha(Vcl::Graphics::TCanvas* DestCanvas, int xDst, int yDst, int Transparency, double Opacity); void __fastcall DrawToTIEBitmap(TIEBitmap* Dest, int XDest, int YDest)/* overload */; void __fastcall DrawToTIEBitmap(TIEBitmap* Dest, int XDest, int YDest, const Hyiedefs::TIERectangle &SrcRect)/* overload */; void __fastcall DrawToTIEBitmap(TIEBitmap* Dest, const Hyiedefs::TIERectangle &DestRect, const Hyiedefs::TIERectangle &SrcRect, Hyiedefs::TResampleFilter Filter = (Hyiedefs::TResampleFilter)(0x5))/* overload */; void __fastcall SynchronizeRGBA(bool RGBAtoAlpha, bool UpdatePixelFormat = false); void __fastcall MergeWithAlpha(TIEBitmap* Bitmap, int DstX = 0x0, int DstY = 0x0, int DstWidth = 0xffffffff, int DstHeight = 0xffffffff, int Transparency = 0xff, Hyiedefs::TResampleFilter ResampleFilter = (Hyiedefs::TResampleFilter)(0x0), Hyieutils::TIERenderOperation Operation = (Hyieutils::TIERenderOperation)(0x0), bool Resample = true, int SrcX = 0x0, int SrcY = 0x0, double Opacity = 1.000000E+00); void __fastcall Changed(); __property bool Full = {read=fFull, write=fFull, nodefault}; __property TIEBitmapOrigin Origin = {read=fOrigin, write=SetOrigin, nodefault}; void __fastcall SyncFull(); void __fastcall Fill(double Value)/* overload */; void __fastcall Fill(Hyiedefs::TRGBA Value)/* overload */; void __fastcall FillRect(int x1, int y1, int x2, int y2, double Value); __property bool HasAlphaChannel = {read=GetHasAlphaChannel, nodefault}; __property __int64 MinFileSize = {read=fMinFileSize, write=fMinFileSize}; void __fastcall RemoveAlphaChannel(bool Merge = false, System::Uitypes::TColor BackgroundColor = (System::Uitypes::TColor)(0xffffff)); void __fastcall FeatherAlphaEdges(int iFeatherDepth); __property Hyieutils::TIEDitherMethod DefaultDitherMethod = {read=fDefaultDitherMethod, write=fDefaultDitherMethod, nodefault}; __property double BlackValue = {read=fBlackValue, write=fBlackValue}; __property double WhiteValue = {read=fWhiteValue, write=fWhiteValue}; void __fastcall AutoCalcBWValues(); __property int ChannelOffset[int idx] = {read=GetChannelOffset, write=SetChannelOffset}; __property int Contrast = {read=fContrast, write=fContrast, nodefault}; __property TIEMask* AdjustmentsMask = {read=GetAdjustmentsMask}; bool __fastcall IsGrayScale(); bool __fastcall IsAllBlack(); __property int BitAlignment = {read=fBitAlignment, write=SetBitAlignment, nodefault}; bool __fastcall IsEmpty(); void __fastcall Clear(); void __fastcall CopyAndConvertFormat(TIEBitmap* Source); __property int ChannelCount = {read=GetChannelCount, write=SetChannelCount, nodefault}; __property int BitCount = {read=GetBitCount, write=SetBitCount, nodefault}; __property TIEMemoryAllocator MemoryAllocator = {read=fMemoryAllocator, write=fMemoryAllocator, nodefault}; int __fastcall CalcRAWSize(); void __fastcall SaveRAWToBufferOrStream(void * Buffer, System::Classes::TStream* Stream, bool StreamHasSize = true); bool __fastcall LoadRAWFromBufferOrStream(void * Buffer, System::Classes::TStream* Stream); void __fastcall LoadFromResource(Winapi::Windows::THandle Instance, const System::UnicodeString ResName, System::WideChar * ResType, int Format = 0x0)/* overload */; void __fastcall LoadFromResource(Winapi::Windows::THandle Instance, const int ResID, System::WideChar * ResType, int Format = 0x0)/* overload */; __property int CanvasCurrentAlpha = {read=fCanvasCurrentAlpha, write=SetCanvasCurrentAlpha, nodefault}; virtual void __fastcall CopyPaletteTo(TIEBaseBitmap* Dest); __property int FragmentsCount = {read=fFragmentsCount, nodefault}; __property System::Classes::TNotifyEvent OnChanged = {read=fOnChanged, write=fOnChanged}; __property bool Modified = {read=fModified, write=SetModified, nodefault}; __property TIERenderVirtualPixel OnRenderVirtualPixel = {read=fOnRenderVirtualPixel, write=fOnRenderVirtualPixel}; __property System::TObject* VirtualBitmapProvider = {read=fVirtualBitmapProvider, write=SetVirtualBitmapProvider}; __property bool IsVirtual = {read=GetIsVirtual, nodefault}; __property TIEICC* ColorProfile = {read=fColorProfile}; __property bool ParamsEnabled = {read=GetParamsEnabled, write=SetParamsEnabled, nodefault}; __property TIOParams* Params = {read=GetParams}; }; class PASCALIMPLEMENTATION TIEVirtualRotatedBitmap : public TIEBitmap { typedef TIEBitmap inherited; private: typedef System::DynamicArray _TIEVirtualRotatedBitmap__1; typedef System::DynamicArray _TIEVirtualRotatedBitmap__2; private: TIEBitmap* fSource; int fSourceWidth; int fSourceHeight; Hyieutils::TIEPixelFormat fSourcePixelFormat; bool fFreeSourceOnDestroy; double fRotation; double fRotationRad; Hyiedefs::TRGB fBackgroundRGB; System::Byte fBackgroundGray; _TIEVirtualRotatedBitmap__1 fArx1; _TIEVirtualRotatedBitmap__1 fArx2; _TIEVirtualRotatedBitmap__2 fAry1; _TIEVirtualRotatedBitmap__2 fAry2; public: __fastcall TIEVirtualRotatedBitmap(TIEBitmap* Source, double Rotation, System::Uitypes::TColor Background, bool FreeSourceOnDestroy); __fastcall virtual ~TIEVirtualRotatedBitmap(); void __fastcall RenderVirtualPixel(System::TObject* Sender, int SrcX, int SrcY, void *outval); public: /* TIEBitmap.CreateAsAlphaChannel */ inline __fastcall TIEVirtualRotatedBitmap(int ImageWidth, int ImageHeight, TIELocation ImageLocation) : TIEBitmap(ImageWidth, ImageHeight, ImageLocation) { } }; class PASCALIMPLEMENTATION TIEVirtualClippedBitmap : public TIEBitmap { typedef TIEBitmap inherited; private: TIEBitmap* fSource; Winapi::Windows::TRect fRect; bool fFreeSourceOnDestroy; TIEVirtualClippedBitmap* fAlphaChannel; protected: virtual TIEBitmap* __fastcall GetAlphaChannel(); virtual TIEBitmap* __fastcall GetAlphaChannelOpt(); virtual void * __fastcall GetScanLine(int Row); virtual Hyiedefs::TRGB __fastcall GetPalette(int index); virtual void * __fastcall GetPaletteBuffer(); virtual int __fastcall GetPaletteLen(); virtual int __fastcall GetPaletteUsed(); public: __fastcall TIEVirtualClippedBitmap(TIEBitmap* Source, const Winapi::Windows::TRect &Rect, bool FreeSourceOnDestroy); __fastcall virtual ~TIEVirtualClippedBitmap(); virtual void * __fastcall GetSegment(int Row, int Col, int Width); virtual void * __fastcall GetRow(int Row); virtual void __fastcall FreeRow(int Row); void __fastcall RenderVirtualPixel(System::TObject* Sender, int SrcX, int SrcY, void *outval); public: /* TIEBitmap.CreateAsAlphaChannel */ inline __fastcall TIEVirtualClippedBitmap(int ImageWidth, int ImageHeight, TIELocation ImageLocation) : TIEBitmap(ImageWidth, ImageHeight, ImageLocation) { } }; class PASCALIMPLEMENTATION TIEMask : public System::TObject { typedef System::TObject inherited; private: int fWidth; int fHeight; int fBitsperpixel; __int64 fRowlen; Winapi::Windows::PByte fBits; int fX1; int fY1; int fX2; int fY2; Hyiedefs::TBitmapInfoHeader256 fBitmapInfoHeader1; Winapi::Windows::PByte fTmpBmp; int fTmpBmpWidth; int fTmpBmpHeight; Hyiedefs::PPointerArray fTmpBmpScanline; bool fFull; Vcl::Graphics::TBitmap* fDrawPixelBitmap; Hyiedefs::PRGB fDrawPixelPtr; int __fastcall DrawHorizontalLine(int Alpha, int xleft, int xright, int y); void __fastcall DrawSinglePolygon(int Alpha, Hyiedefs::PPointArray SelPoly, int SelPolyCount); void * __fastcall GetScanLine(int Row); void __fastcall CheckMemoryAllocation(); Winapi::Windows::PByte __fastcall GetBits(); public: __fastcall TIEMask(); __fastcall virtual ~TIEMask(); void __fastcall SetPixel(int x, int y, int Alpha); int __fastcall GetPixel(int x, int y); void __fastcall SetRectangle(const Winapi::Windows::TRect &Rect, int Alpha)/* overload */; void __fastcall SetRectangle(int x1, int y1, int x2, int y2, int Alpha)/* overload */; void __fastcall SetEllipse(int CenterX, int CenterY, int Width, int Height, int Alpha); void __fastcall AllocateBits(int width, int height, int bitsperpixel); void __fastcall Resize(int NewWidth, int NewHeight); void __fastcall FreeBits(); void __fastcall CopyBitmap(Vcl::Graphics::TBitmap* Dest, Vcl::Graphics::TBitmap* Source, bool dstonlymask, bool srconlymask); void __fastcall CopyIEBitmap(TIEBitmap* Dest, TIEBitmap* Source, bool dstonlymask, bool srconlymask, bool UseAlphaChannel); void __fastcall CopyIEBitmapAlpha(TIEBitmap* Dest, TIEBitmap* Source, bool dstonlymask, bool srconlymask); void __fastcall DrawPolygon(int Alpha, Hyiedefs::PPointArray SelPoly, int SelPolyCount); void __fastcall CombineWithAlpha(TIEBitmap* SourceAlpha, int ox, int oy, bool SynchronizeBoundingRect); void __fastcall Fill(int Alpha = 0xff); void __fastcall Empty(); bool __fastcall IsPointInside(int x, int y); void __fastcall TranslateBitmap(int &ox, int &oy, bool CutSel); void __fastcall InvertCanvas(Vcl::Graphics::TCanvas* Dest, int xDst, int yDst, int dxDst, int dyDst, int xMask, int yMask, int dxMask, int dyMask); void __fastcall DrawOuter(Vcl::Graphics::TBitmap* Dest, int xDst, int yDst, int dxDst, int dyDst, int xMask, int yMask, int dxMask, int dyMask, int AlphaBlend = 0xffffffff, System::Uitypes::TColor Color = (System::Uitypes::TColor)(0x0)); void __fastcall DrawOutline(Vcl::Graphics::TCanvas* Dest, int xDst, int yDst, int dxDst, int dyDst, int xMask, int yMask, int dxMask, int dyMask, int AniCounter, System::Uitypes::TColor Color1, System::Uitypes::TColor Color2, Winapi::Windows::PRect actualRect = (System::Types::PRect)(0x0)); void __fastcall Negative(int MaxVal); void __fastcall SyncFull(); void __fastcall SyncRect(); void __fastcall Intersect(int x1, int y1, int x2, int y2); TIEMask* __fastcall CreateResampledMask(int NewWidth, int NewHeight); __property int Width = {read=fWidth, nodefault}; __property int Height = {read=fHeight, nodefault}; __property int BitsPerPixel = {read=fBitsperpixel, nodefault}; __property int X1 = {read=fX1, write=fX1, nodefault}; __property int Y1 = {read=fY1, write=fY1, nodefault}; __property int X2 = {read=fX2, write=fX2, nodefault}; __property int Y2 = {read=fY2, write=fY2, nodefault}; bool __fastcall IsEmpty(); __property void * ScanLine[int row] = {read=GetScanLine}; void __fastcall Assign(TIEMask* Source)/* overload */; void __fastcall Assign(TIEBitmap* Source)/* overload */; __property __int64 Rowlen = {read=fRowlen}; __property Winapi::Windows::PByte Bits = {read=GetBits}; __property bool Full = {read=fFull, write=fFull, nodefault}; }; struct DECLSPEC_DRECORD TIEVirtualImageInfo { public: __int64 pos; __int64 vsize; void *ptr; bool bitmapped; int orig_width; int orig_height; bool HasAlphaChannel; Hyieutils::TIEDataAccess currentaccess; int ImWidth; int ImHeight; int ImBitCount; Hyieutils::TIEPixelFormat ImPixelFormat; unsigned Identifier; }; typedef TIEVirtualImageInfo *PIEVirtualImageInfo; struct DECLSPEC_DRECORD TIEVirtualToReleaseBmp { public: PIEVirtualImageInfo info; TIEBitmap* bmp; int refcount; }; typedef TIEVirtualToReleaseBmp *PIEVirtualToReleaseBmp; struct DECLSPEC_DRECORD TIEVirtualFreeBlock { public: __int64 pos; unsigned vsize; }; typedef TIEVirtualFreeBlock *PIEVirtualFreeBlock; class PASCALIMPLEMENTATION TIEVirtualImageList : public System::TObject { typedef System::TObject inherited; private: Hyieutils::TIEFileBuffer* fmemmap; bool fUseDisk; __int64 fSize; System::Classes::TList* fImageInfo; System::Classes::TList* fToDiscardList; System::Classes::TList* fFreeBlocks; __int64 fInsPos; unsigned fAllocationBlock; int fMaxImagesInMemory; int fImagesInMemory; System::Classes::TList* fBmpToRelease; unsigned fLastVImageSize; System::UnicodeString fDescriptor; System::Syncobjs::TCriticalSection* fLock; int __fastcall GetImageCount(); int __fastcall BmpToReleaseIndexOf(void * image); void __fastcall MergeConsecutiveBlocks(); protected: void __fastcall ReAllocateBits(); void __fastcall FreeBits(); void __fastcall RemoveImageInfo(int idx, bool deleteItem); void __fastcall DiscardImage(PIEVirtualImageInfo info); void __fastcall DiscardOne(); void __fastcall DiscardAll(); void __fastcall MapImage(void * image, Hyieutils::TIEDataAccess access); bool __fastcall AllocImage(void * image, int Width, int Height, int Bitcount, Hyieutils::TIEPixelFormat PixelFormat, bool HasAlpha, bool MapNow); void __fastcall DirectCopyToBitmap(void * image, TIEBitmap* bitmap); void __fastcall CreateEx(); void __fastcall DestroyEx(); public: __fastcall TIEVirtualImageList(const System::UnicodeString Descriptor, bool UseDisk); __fastcall virtual ~TIEVirtualImageList(); void __fastcall PrepareSpaceFor(int Width, int Height, int Bitcount, int ImageCount); void * __fastcall AddBlankImage(int Width, int Height, int Bitcount, Hyieutils::TIEPixelFormat PixelFormat, bool HasAlpha, bool MapNow); void * __fastcall AddBitmap(Vcl::Graphics::TBitmap* bitmap); void * __fastcall AddIEBitmap(TIEBaseBitmap* bitmap); void * __fastcall AddIEBitmapNoMap(TIEBaseBitmap* bitmap); void * __fastcall AddBitmapRect(Vcl::Graphics::TBitmap* bitmap, int xsrc, int ysrc, int dxsrc, int dysrc); void __fastcall CopyToIEBitmap(void * image, TIEBitmap* bitmap); void __fastcall CopyFromIEBitmap(void * image, TIEBitmap* bitmap); TIEBitmap* __fastcall GetBitmap(void * image); void __fastcall ReleaseBitmap(TIEBitmap* bitmap, bool changed); void __fastcall ReleaseBitmapByImage(void * image, bool changed); __property int MaxImagesInMemory = {read=fMaxImagesInMemory, write=fMaxImagesInMemory, nodefault}; __property int ImageCount = {read=GetImageCount, nodefault}; void __fastcall Delete(void * image); int __fastcall GetImageWidth(void * image); int __fastcall GetImageHeight(void * image); int __fastcall GetImageOriginalWidth(void * image); int __fastcall GetImageOriginalHeight(void * image); void __fastcall SetImageOriginalWidth(void * image, int Value); void __fastcall SetImageOriginalHeight(void * image, int Value); void __fastcall SetImageIdentifier(void * image, const System::WideString Value); int __fastcall GetImageBitCount(void * image); void * __fastcall GetImageBits(void * image); Hyieutils::TIEPixelFormat __fastcall GetImagePixelFormat(void * image); void * __fastcall GetImagePalette(void * image); void * __fastcall GetAlphaBits(void * image); __int64 __fastcall GetImageFilePos(void * image); int __fastcall FindImageIndex(void * image); void * __fastcall GetImageFromIndex(int index); void * __fastcall GetImageByIdentifier(const System::UnicodeString value); void __fastcall SaveToStream(System::Classes::TStream* Stream); bool __fastcall LoadFromStream(System::Classes::TStream* Stream); }; class PASCALIMPLEMENTATION TIEDibbitmap : public TIEBaseBitmap { typedef TIEBaseBitmap inherited; private: unsigned fWidth; unsigned fHeight; unsigned fBitCount; unsigned fRowLen; Winapi::Windows::THandle fHDC; Winapi::Windows::THandle fDIB; Hyiedefs::TBitmapInfoHeader256 fBitmapInfoHeader1; void *fBits; protected: virtual int __fastcall GetBitCount(); virtual int __fastcall GetWidth(); virtual int __fastcall GetHeight(); virtual void __fastcall SetWidth(int Value); virtual void __fastcall SetHeight(int Value); virtual Hyieutils::TIEPixelFormat __fastcall GetPixelFormat(); virtual int __fastcall GetRowLen(); virtual void * __fastcall GetScanLine(int row); virtual Hyiedefs::TRGB __fastcall GetPalette(int index); virtual void * __fastcall GetPaletteBuffer(); virtual void __fastcall SetPalette(int index, Hyiedefs::TRGB Value); virtual int __fastcall GetPaletteLen(); virtual int __fastcall GetPaletteUsed(); virtual void __fastcall SetPaletteUsed(int Value); public: __fastcall TIEDibbitmap(); __fastcall virtual ~TIEDibbitmap(); bool __fastcall AllocateBits(unsigned BmpWidth, unsigned BmpHeight, unsigned BmpBitCount); virtual bool __fastcall Allocate(int ImageWidth, int ImageHeight, Hyieutils::TIEPixelFormat ImagePixelFormat); void __fastcall FreeBits(); __property Winapi::Windows::THandle HDC = {read=fHDC}; __property Winapi::Windows::THandle DIB = {read=fDIB}; __property unsigned Width = {read=fWidth, nodefault}; __property unsigned Height = {read=fHeight, nodefault}; __property unsigned BitCount = {read=fBitCount, nodefault}; __property void * Scanline[int row] = {read=GetScanLine}; __property void * Bits = {read=fBits}; __property int Rowlen = {read=GetRowLen, nodefault}; void __fastcall CopyToTBitmap(Vcl::Graphics::TBitmap* Dest); virtual void __fastcall Assign(System::TObject* Source); virtual void __fastcall AssignImage(TIEBaseBitmap* Source); virtual void __fastcall CopyPaletteTo(TIEBaseBitmap* Dest); }; struct DECLSPEC_DRECORD OIAN_MARK_ATTRIBUTES { public: int uType; Winapi::Windows::TRect lrBounds; Winapi::Windows::TRGBQuad rgbColor1; Winapi::Windows::TRGBQuad rgbColor2; System::LongBool bHighlighting; System::LongBool bTransparent; unsigned uLineSize; unsigned uReserved1; unsigned uReserved2; Winapi::Windows::TLogFontA lfFont; unsigned bReserved3; int Time; System::LongBool bVisible; unsigned dwReserved4; System::StaticArray lReserved; }; class PASCALIMPLEMENTATION TIEImagingObject : public System::TObject { typedef System::TObject inherited; private: OIAN_MARK_ATTRIBUTES attrib; Hyiedefs::PIEPointArray points; int pointsLen; char *text; TIEBitmap* image; public: __fastcall TIEImagingObject(); __fastcall virtual ~TIEImagingObject(); }; class PASCALIMPLEMENTATION TIEImagingAnnot : public System::TObject { typedef System::TObject inherited; private: System::TObject* fParent; bool fUserChanged; System::Classes::TList* fObjects; TIEImagingObject* __fastcall GetObject(int idx); int __fastcall GetObjectsCount(); public: __fastcall TIEImagingAnnot(); __fastcall virtual ~TIEImagingAnnot(); void __fastcall LoadFromStandardBuffer(void * buffer, int buflen); void __fastcall SaveToStandardBuffer(void * &Buffer, int &BufferLength); __property bool UserChanged = {read=fUserChanged, write=fUserChanged, nodefault}; void __fastcall Clear(); void __fastcall Assign(TIEImagingAnnot* Source); void __fastcall SaveToStream(System::Classes::TStream* Stream); void __fastcall LoadFromStream(System::Classes::TStream* Stream); void __fastcall CopyToTImageEnVect(System::TObject* Target = (System::TObject*)(0x0)); void __fastcall CopyFromTImageEnVect(System::TObject* Target = (System::TObject*)(0x0)); void __fastcall CopyToTImageEnView(System::TObject* Target = (System::TObject*)(0x0)); void __fastcall CopyFromTImageEnView(System::TObject* Target = (System::TObject*)(0x0)); void __fastcall DrawToBitmap(TIEBitmap* target, bool Antialias); __property TIEImagingObject* Objects[int idx] = {read=GetObject}; __property int ObjectsCount = {read=GetObjectsCount, nodefault}; __property System::TObject* Parent = {read=fParent, write=fParent}; }; class PASCALIMPLEMENTATION TIEImageEnAnnot : public System::TObject { typedef System::TObject inherited; private: System::TObject* fParent; System::Classes::TMemoryStream* fData; bool fIEVectObjects; int __fastcall GetObjectsCount(); public: __fastcall TIEImageEnAnnot(System::TObject* parent); __fastcall virtual ~TIEImageEnAnnot(); __classmethod bool __fastcall BufferContainsImageEnAnnot(void * buffer, int buflen, /* out */ bool &IsIEVectObjects); __classmethod bool __fastcall TIFFContainsImageEnAnnot(System::Classes::TStream* Stream, int ImageIndex)/* overload */; __classmethod bool __fastcall TIFFContainsImageEnAnnot(const System::WideString Filename, int ImageIndex)/* overload */; void __fastcall LoadFromBuffer(void * buffer, int buflen); void __fastcall SaveToBuffer(void * &Buffer, int &BufferLength); void __fastcall Clear(); void __fastcall Assign(TIEImageEnAnnot* Source); void __fastcall SaveToStream(System::Classes::TStream* Stream); void __fastcall LoadFromStream(System::Classes::TStream* Stream); void __fastcall CopyToTImageEnVect(System::TObject* Target = (System::TObject*)(0x0)); void __fastcall CopyFromTImageEnVect(System::TObject* Target = (System::TObject*)(0x0)); void __fastcall CopyToTImageEnView(System::TObject* Target = (System::TObject*)(0x0)); void __fastcall CopyFromTImageEnView(System::TObject* Target = (System::TObject*)(0x0)); void __fastcall DrawToBitmap(TIEBitmap* target, bool Antialias); bool __fastcall IsEmpty(); __property System::TObject* Parent = {read=fParent}; __property int ObjectsCount = {read=GetObjectsCount, nodefault}; __property bool HasVectorialObjects = {read=fIEVectObjects, nodefault}; }; class PASCALIMPLEMENTATION TIEWorkBitmap : public System::TObject { typedef System::TObject inherited; private: typedef System::DynamicArray _TIEWorkBitmap__1; private: int fWidth; int fHeight; int fBitCount; int fRowLen; void *fBits; int fRowsPerFragment; _TIEWorkBitmap__1 fFragments; void * __fastcall GetScanline(int row); void __fastcall FragmentedAlloc(); void __fastcall FreeFragments(); public: __fastcall TIEWorkBitmap(int BmpWidth, int BmpHeight, int BmpBitCount); __fastcall virtual ~TIEWorkBitmap(); void __fastcall AllocateBits(int BmpWidth, int BmpHeight, int BmpBitCount); void __fastcall FreeBits(); __property int Width = {read=fWidth, nodefault}; __property int Height = {read=fHeight, nodefault}; __property int BitCount = {read=fBitCount, nodefault}; __property void * Scanline[int row] = {read=GetScanline}; __property void * Bits = {read=fBits}; __property int Rowlen = {read=fRowLen, nodefault}; Winapi::Windows::PByte __fastcall GetPByte(int row, int col); PWORD __fastcall GetPWord(int row, int col); Hyiedefs::PRGB __fastcall GetPRGB(int row, int col); System::PDouble __fastcall GetPDouble(int row, int col); Winapi::Windows::PSingle __fastcall GetPSingle(int row, int col); System::PInteger __fastcall GetPInteger(int row, int col); void __fastcall SetBit(int row, int col, int value); }; enum DECLSPEC_DENUM TIOPSCompression : unsigned char { ioPS_RLE, ioPS_G4FAX, ioPS_G3FAX2D, ioPS_JPEG }; enum DECLSPEC_DENUM TIOPDFCompression : unsigned char { ioPDF_UNCOMPRESSED, ioPDF_RLE, ioPDF_G4FAX, ioPDF_G3FAX2D, ioPDF_JPEG, ioPDF_LZW }; enum DECLSPEC_DENUM TIOPDFPaperSize : unsigned char { iepA0, iepA1, iepA2, iepA3, iepA4, iepA5, iepA6, iepB5, iepLetter, iepLegal, iepLedger, iepTabloid, iepAuto, iepUnknown }; enum DECLSPEC_DENUM TIOTIFFCompression : unsigned char { ioTIFF_UNCOMPRESSED, ioTIFF_CCITT1D, ioTIFF_G3FAX1D, ioTIFF_G3FAX2D, ioTIFF_G4FAX, ioTIFF_LZW, ioTIFF_OLDJPEG, ioTIFF_JPEG, ioTIFF_PACKBITS, ioTIFF_ZIP, ioTIFF_DEFLATE, ioTIFF_UNKNOWN }; enum DECLSPEC_DENUM TIOTIFFPhotometInterpret : unsigned char { ioTIFF_WHITEISZERO, ioTIFF_BLACKISZERO, ioTIFF_RGB, ioTIFF_RGBPALETTE, ioTIFF_TRANSPMASK, ioTIFF_CMYK, ioTIFF_YCBCR, ioTIFF_CIELAB }; enum DECLSPEC_DENUM TIOJPEGColorspace : unsigned char { ioJPEG_RGB, ioJPEG_GRAYLEV, ioJPEG_YCbCr, ioJPEG_CMYK, ioJPEG_YCbCrK }; enum DECLSPEC_DENUM TIOJ2000ColorSpace : unsigned char { ioJ2000_GRAYLEV, ioJ2000_RGB, ioJ2000_YCbCr }; enum DECLSPEC_DENUM TIOJ2000ScalableBy : unsigned char { ioJ2000_Rate, ioJ2000_Resolution }; enum DECLSPEC_DENUM TIOJPEGDctMethod : unsigned char { ioJPEG_ISLOW, ioJPEG_IFAST, ioJPEG_FLOAT }; enum DECLSPEC_DENUM TIOJPEGCromaSubsampling : unsigned char { ioJPEG_MEDIUM, ioJPEG_HIGH, ioJPEG_NONE }; enum DECLSPEC_DENUM TIOJPEGScale : unsigned char { ioJPEG_AUTOCALC, ioJPEG_FULLSIZE, ioJPEG_HALF, ioJPEG_QUARTER, ioJPEG_EIGHTH }; enum DECLSPEC_DENUM TIOBMPVersion : unsigned char { ioBMP_BM, ioBMP_BM3, ioBMP_BMOS2V1, ioBMP_BMOS2V2, ioBMP_V4, ioBMP_V5 }; enum DECLSPEC_DENUM TIOBMPCompression : unsigned char { ioBMP_UNCOMPRESSED, ioBMP_RLE }; enum DECLSPEC_DENUM TIOPCXCompression : unsigned char { ioPCX_UNCOMPRESSED, ioPCX_RLE }; enum DECLSPEC_DENUM TIOPNGFilter : unsigned char { ioPNG_FILTER_NONE, ioPNG_FILTER_SUB, ioPNG_FILTER_PAETH, ioPNG_FILTER_UP, ioPNG_FILTER_AVG, ioPNG_FILTER_ALL }; enum DECLSPEC_DENUM TIEGIFAction : unsigned char { ioGIF_None, ioGIF_DontRemove, ioGIF_DrawBackground, ioGIF_RestorePrev }; typedef System::StaticArray TIOICOSizes; typedef System::StaticArray TIOICOBitCount; enum DECLSPEC_DENUM TIOBMPRAWChannelOrder : unsigned char { coRGB, coBGR }; enum DECLSPEC_DENUM TIOBMPRAWDataFormat : unsigned char { dfBinary, dfTextDecimal, dfTextHex }; enum DECLSPEC_DENUM TIOBMPRAWPlanes : unsigned char { plInterleaved, plPlanar }; enum DECLSPEC_DENUM TIOByteOrder : unsigned char { ioBigEndian, ioLittleEndian }; enum DECLSPEC_DENUM TIEDicomRange : unsigned char { iedrAdjust, iedrSetBlackWhite }; enum DECLSPEC_DENUM TIEDicomCompression : unsigned char { iedcUncompressed_Implicit, iedcUncompressed, iedcUncompressed_BE, iedcRLE, iedcLSJPEG1, iedcLSJPEG2, iedcJPEG, iedcJPEG12Bit, iedcJPEG2000, iedcLosslessJPEG2000, iedcMPEG }; class PASCALIMPLEMENTATION TIOParams : public System::TObject { typedef System::TObject inherited; private: System::TObject* fAttachedTo; Hyieutils::TIEDictionary* fDict; int fBitsPerSample; System::WideString fFileName; int fSamplesPerPixel; int fWidth; int fHeight; Hyieutils::TIOFileType fFileType; int fImageIndex; int fImageCount; bool fGetThumbnail; bool fIsResource; bool fEnableAdjustOrientation; int fOriginalWidth; int fOriginalHeight; TIOTIFFCompression fTIFF_Compression; int fTIFF_ImageIndex; int fTIFF_SubIndex; int fTIFF_NewSubfileType; TIOTIFFPhotometInterpret fTIFF_PhotometInterpret; int fTIFF_PlanarConf; int fTIFF_XPos; int fTIFF_YPos; int fTIFF_GetTile; System::AnsiString fTIFF_DocumentName; System::AnsiString fTIFF_ImageDescription; System::AnsiString fTIFF_PageName; int fTIFF_PageNumber; int fTIFF_PageCount; int fTIFF_Orientation; Hyiedefs::TTIFFLZWDecompFunc fTIFF_LZWDecompFunc; Hyiedefs::TTIFFLZWCompFunc fTIFF_LZWCompFunc; bool fTIFF_EnableAdjustOrientation; int fTIFF_JPEGQuality; TIOJPEGColorspace fTIFF_JPEGColorSpace; int fTIFF_ZIPCompression; int fTIFF_StripCount; int fTIFF_ImageCount; int fTIFF_FillOrder; TIOByteOrder fTIFF_ByteOrder; Hyiedefs::TIEArrayOfByte fTIFF_PhotoshopImageResources; Hyiedefs::TIEArrayOfByte fTIFF_PhotoshopImageSourceData; bool fTIFF_BigTIFF; int fDCX_ImageIndex; System::AnsiString fGIF_Version; int fGIF_ImageIndex; int fGIF_XPos; int fGIF_YPos; int fGIF_DelayTime; bool fGIF_FlagTranspColor; Hyiedefs::TRGB fGIF_TranspColor; bool fGIF_Interlaced; int fGIF_WinWidth; int fGIF_WinHeight; Hyiedefs::TRGB fGIF_Background; int fGIF_Ratio; System::Classes::TStringList* fGIF_Comments; TIEGIFAction fGIF_Action; bool fGIF_RAWLoad; Hyiedefs::TGIFLZWDecompFunc fGIF_LZWDecompFunc; Hyiedefs::TGIFLZWCompFunc fGIF_LZWCompFunc; int fGIF_ImageCount; TIOJPEGColorspace fJPEG_ColorSpace; int fJPEG_Quality; TIOJPEGDctMethod fJPEG_DCTMethod; TIOJPEGCromaSubsampling fJPEG_CromaSubsampling; bool fJPEG_OptimalHuffman; int fJPEG_Smooth; bool fJPEG_Progressive; TIOJPEGScale fJPEG_Scale; TIEMarkerList* fJPEG_MarkerList; int fJPEG_Scale_Used; int fJPEG_WarningTot; int fJPEG_WarningCode; bool fJPEG_EnableAdjustOrientation; bool fJPEG_GetExifThumbnail; TIOJ2000ColorSpace fJ2000_ColorSpace; double fJ2000_Rate; TIOJ2000ScalableBy fJ2000_ScalableBy; int fPCX_Version; TIOPCXCompression fPCX_Compression; TIOBMPVersion fBMP_Version; TIOBMPCompression fBMP_Compression; bool fBMP_HandleTransparency; int fICO_ImageIndex; Hyiedefs::TRGB fICO_Background; int fCUR_ImageIndex; int fCUR_XHotSpot; int fCUR_YHotSpot; Hyiedefs::TRGB fCUR_Background; bool fPNG_Interlaced; Hyiedefs::TRGB fPNG_Background; TIOPNGFilter fPNG_Filter; int fPNG_Compression; System::Classes::TStringList* fPNG_TextKeys; System::Classes::TStringList* fPNG_TextValues; TIEDicomTags* fDICOM_Tags; double fDICOM_WindowCenterOffset; TIEDicomRange fDICOM_Range; int fDICOM_JPEGQuality; double fDICOM_J2000Rate; double fDICOM_RescaleIntercept; double fDICOM_RescaleSlope; double fDICOM_WindowCenter; double fDICOM_WindowWidth; int fTGA_XPos; int fTGA_YPos; bool fTGA_Compressed; System::AnsiString fTGA_Descriptor; System::AnsiString fTGA_Author; System::TDateTime fTGA_Date; System::AnsiString fTGA_ImageName; Hyiedefs::TRGB fTGA_Background; double fTGA_AspectRatio; double fTGA_Gamma; bool fTGA_GrayLevel; TIEIPTCInfoList* fIPTC_Info; TIEImagingAnnot* fImagingAnnot; TIEImageEnAnnot* fImageEnAnnot; System::Classes::TStringList* fPXM_Comments; System::Classes::TList* fEXIF_Tags; bool fEXIF_HasEXIFData; int fEXIF_Orientation; TIEBitmap* fEXIF_Bitmap; System::AnsiString fEXIF_ImageDescription; System::AnsiString fEXIF_Make; System::AnsiString fEXIF_Model; double fEXIF_XResolution; double fEXIF_YResolution; int fEXIF_ResolutionUnit; System::AnsiString fEXIF_Software; System::AnsiString fEXIF_Artist; System::AnsiString fEXIF_DateTime; System::StaticArray fEXIF_WhitePoint; System::StaticArray fEXIF_PrimaryChromaticities; System::StaticArray fEXIF_YCbCrCoefficients; int fEXIF_YCbCrPositioning; System::StaticArray fEXIF_ReferenceBlackWhite; System::AnsiString fEXIF_Copyright; double fEXIF_ExposureTime; double fEXIF_FNumber; int fEXIF_ExposureProgram; System::StaticArray fEXIF_ISOSpeedRatings; System::AnsiString fEXIF_ExifVersion; System::AnsiString fEXIF_DateTimeOriginal; System::AnsiString fEXIF_DateTimeDigitized; double fEXIF_CompressedBitsPerPixel; double fEXIF_ShutterSpeedValue; double fEXIF_ApertureValue; double fEXIF_BrightnessValue; double fEXIF_ExposureBiasValue; double fEXIF_MaxApertureValue; double fEXIF_SubjectDistance; int fEXIF_MeteringMode; int fEXIF_LightSource; int fEXIF_Flash; double fEXIF_FocalLength; System::AnsiString fEXIF_SubsecTime; System::AnsiString fEXIF_SubsecTimeOriginal; System::AnsiString fEXIF_SubsecTimeDigitized; System::AnsiString fEXIF_FlashPixVersion; int fEXIF_ColorSpace; int fEXIF_ExifImageWidth; int fEXIF_ExifImageHeight; System::AnsiString fEXIF_RelatedSoundFile; double fEXIF_FocalPlaneXResolution; double fEXIF_FocalPlaneYResolution; int fEXIF_FocalPlaneResolutionUnit; double fEXIF_ExposureIndex; int fEXIF_SensingMethod; int fEXIF_FileSource; int fEXIF_SceneType; System::WideString fEXIF_UserComment; System::AnsiString fEXIF_UserCommentCode; TIETagsHandler* fEXIF_MakerNote; int fEXIF_XPRating; System::WideString fEXIF_XPTitle; System::WideString fEXIF_XPComment; System::WideString fEXIF_XPAuthor; System::WideString fEXIF_XPKeywords; System::WideString fEXIF_XPSubject; int fEXIF_ExposureMode; int fEXIF_WhiteBalance; double fEXIF_DigitalZoomRatio; int fEXIF_FocalLengthIn35mmFilm; int fEXIF_SceneCaptureType; int fEXIF_GainControl; int fEXIF_Contrast; int fEXIF_Saturation; int fEXIF_Sharpness; int fEXIF_SubjectDistanceRange; System::AnsiString fEXIF_ImageUniqueID; System::AnsiString fEXIF_GPSVersionID; System::AnsiString fEXIF_GPSLatitudeRef; double fEXIF_GPSLatitudeDegrees; double fEXIF_GPSLatitudeMinutes; double fEXIF_GPSLatitudeSeconds; System::AnsiString fEXIF_GPSLongitudeRef; double fEXIF_GPSLongitudeDegrees; double fEXIF_GPSLongitudeMinutes; double fEXIF_GPSLongitudeSeconds; System::AnsiString fEXIF_GPSAltitudeRef; double fEXIF_GPSAltitude; double fEXIF_GPSTimeStampHour; double fEXIF_GPSTimeStampMinute; double fEXIF_GPSTimeStampSecond; System::AnsiString fEXIF_GPSSatellites; System::AnsiString fEXIF_GPSStatus; System::AnsiString fEXIF_GPSMeasureMode; double fEXIF_GPSDOP; System::AnsiString fEXIF_GPSSpeedRef; double fEXIF_GPSSpeed; System::AnsiString fEXIF_GPSTrackRef; double fEXIF_GPSTrack; System::AnsiString fEXIF_GPSImgDirectionRef; double fEXIF_GPSImgDirection; System::AnsiString fEXIF_GPSMapDatum; System::AnsiString fEXIF_GPSDestLatitudeRef; double fEXIF_GPSDestLatitudeDegrees; double fEXIF_GPSDestLatitudeMinutes; double fEXIF_GPSDestLatitudeSeconds; System::AnsiString fEXIF_GPSDestLongitudeRef; double fEXIF_GPSDestLongitudeDegrees; double fEXIF_GPSDestLongitudeMinutes; double fEXIF_GPSDestLongitudeSeconds; System::AnsiString fEXIF_GPSDestBearingRef; double fEXIF_GPSDestBearing; System::AnsiString fEXIF_GPSDestDistanceRef; double fEXIF_GPSDestDistance; System::AnsiString fEXIF_GPSDateStamp; System::AnsiString fEXIF_InteropIndex; System::AnsiString fEXIF_InteropVersion; System::AnsiString fEXIF_CameraOwnerName; System::AnsiString fEXIF_BodySerialNumber; System::AnsiString fEXIF_LensMake; System::AnsiString fEXIF_LensModel; System::AnsiString fEXIF_LensSerialNumber; double fEXIF_Gamma; System::StaticArray fEXIF_SubjectArea; int fEXIF_SubjectLocationX; int fEXIF_SubjectLocationY; int fAVI_FrameCount; double fAVI_FrameDelayTime; int fMEDIAFILE_FrameCount; double fMEDIAFILE_FrameDelayTime; int fPS_PaperWidth; int fPS_PaperHeight; TIOPSCompression fPS_Compression; System::AnsiString fPS_Title; int fPDF_PaperWidth; int fPDF_PaperHeight; TIOPDFCompression fPDF_Compression; System::AnsiString fPDF_Title; System::AnsiString fPDF_Author; System::AnsiString fPDF_Subject; System::AnsiString fPDF_Keywords; System::AnsiString fPDF_Creator; System::AnsiString fPDF_Producer; bool fRAW_HalfSize; double fRAW_Gamma; double fRAW_Bright; double fRAW_RedScale; double fRAW_BlueScale; bool fRAW_QuickInterpolate; bool fRAW_UseAutoWB; bool fRAW_UseCameraWB; bool fRAW_FourColorRGB; System::AnsiString fRAW_Camera; bool fRAW_GetExifThumbnail; bool fRAW_AutoAdjustColors; System::AnsiString fRAW_ExtraParams; TIOBMPRAWChannelOrder fBMPRAW_ChannelOrder; TIOBMPRAWPlanes fBMPRAW_Planes; int fBMPRAW_RowAlign; int fBMPRAW_HeaderSize; TIOBMPRAWDataFormat fBMPRAW_DataFormat; bool fPSD_LoadLayers; bool fPSD_ReplaceLayers; bool fPSD_HasPremultipliedAlpha; bool fPSD_LargeDocumentFormat; System::AnsiString fPSD_SelectLayer; double fHDP_ImageQuality; bool fHDP_Lossless; System::AnsiString fXMP_Info; int fIEN_Compression; System::WideString fIEN_Description; bool fIEN_GetThumbnail; Hyieutils::TIOFileType fSVG_ImageCompression; System::UnicodeString __fastcall GetFileTypeStr(); void __fastcall SetEXIF_WhitePoint(int index, double v); double __fastcall GetEXIF_WhitePoint(int index); void __fastcall SetEXIF_PrimaryChromaticities(int index, double v); double __fastcall GetEXIF_PrimaryChromaticities(int index); void __fastcall SetEXIF_YCbCrCoefficients(int index, double v); double __fastcall GetEXIF_YCbCrCoefficients(int index); void __fastcall SetEXIF_ReferenceBlackWhite(int index, double v); double __fastcall GetEXIF_ReferenceBlackWhite(int index); void __fastcall SetEXIF_ISOSpeedRatings(int index, int v); int __fastcall GetEXIF_ISOSpeedRatings(int index); void __fastcall SetEXIF_SubjectArea(int index, int v); int __fastcall GetEXIF_SubjectArea(int index); void __fastcall SetDpi(int Value); void __fastcall SetTIFF_Orientation(int Value); void __fastcall SetEXIF_Orientation(int Value); void __fastcall SetEXIF_XResolution(double Value); void __fastcall SetEXIF_YResolution(double Value); TIEICC* __fastcall GetInputICC(); TIEICC* __fastcall GetOutputICC(); TIEICC* __fastcall GetDefaultICC(); TIEImagingAnnot* __fastcall GetImagingAnnot(); void __fastcall SetImageIndex(int value); void __fastcall SetImageCount(int value); void __fastcall SetGetThumbnail(bool value); void __fastcall SetIsResource(bool value); void __fastcall SetJPEG_GetExifThumbnail(bool value); void __fastcall SetRAW_GetExifThumbnail(bool value); void __fastcall SetEnableAdjustOrientation(bool value); void __fastcall EXIFTagsAdd(int tag); void __fastcall EXIFTagsDel(int tag); void __fastcall SetEXIF_ExposureTime(double value); void __fastcall SetEXIF_FNumber(double value); void __fastcall SetEXIF_ExposureProgram(int value); void __fastcall SetEXIF_CompressedBitsPerPixel(double value); void __fastcall SetEXIF_ShutterSpeedValue(double value); void __fastcall SetEXIF_ApertureValue(double value); void __fastcall SetEXIF_BrightnessValue(double value); void __fastcall SetEXIF_ExposureBiasValue(double value); void __fastcall SetEXIF_MaxApertureValue(double value); void __fastcall SetEXIF_SubjectDistance(double value); void __fastcall SetEXIF_MeteringMode(int value); void __fastcall SetEXIF_LightSource(int value); void __fastcall SetEXIF_Flash(int value); void __fastcall SetEXIF_FocalLength(double value); void __fastcall SetEXIF_ColorSpace(int value); void __fastcall SetEXIF_ExifImageWidth(int value); void __fastcall SetEXIF_ExifImageHeight(int value); void __fastcall SetEXIF_FocalPlaneXResolution(double value); void __fastcall SetEXIF_FocalPlaneYResolution(double value); void __fastcall SetEXIF_FocalPlaneResolutionUnit(int value); void __fastcall SetEXIF_ExposureIndex(double value); void __fastcall SetEXIF_SensingMethod(int value); void __fastcall SetEXIF_FileSource(int value); void __fastcall SetEXIF_SceneType(int value); void __fastcall SetDpiX(int Value); void __fastcall SetDpiY(int Value); double __fastcall GetEXIF_GPSLatitude(); void __fastcall SetEXIF_GPSLatitude(double value); double __fastcall GetEXIF_GPSLongitude(); void __fastcall SetEXIF_GPSLongitude(double value); System::TDateTime __fastcall GetEXIF_DateTime2(); void __fastcall SetEXIF_DateTime2(const System::TDateTime Value); System::TDateTime __fastcall GetEXIF_DateTimeOriginal2(); void __fastcall SetEXIF_DateTimeOriginal2(const System::TDateTime Value); System::TDateTime __fastcall GetEXIF_DateTimeDigitized2(); void __fastcall SetEXIF_DateTimeDigitized2(const System::TDateTime Value); System::UnicodeString __fastcall GetEXIF_GPSLatitude_Str(); System::UnicodeString __fastcall GetEXIF_GPSLongitude_Str(); void __fastcall SetEXIF_Gamma(double value); void __fastcall SetEXIF_SubjectLocationX(int value); void __fastcall SetEXIF_SubjectLocationY(int value); System::UnicodeString __fastcall GetIPTC_Photoshop(int FieldID); void __fastcall SetIPTC_Photoshop(int FieldID, const System::UnicodeString Value); int __fastcall GetImageDelayTime(); TIEDicomCompression __fastcall GetDICOM_Compression(); void __fastcall SetDICOM_Compression(TIEDicomCompression Value); void __fastcall SetXMP_Info(System::AnsiString Value); TIOPDFPaperSize __fastcall GetPDF_PaperSize(); void __fastcall SetPDF_PaperSize(const TIOPDFPaperSize value); TIOPDFPaperSize __fastcall GetPS_PaperSize(); void __fastcall SetPS_PaperSize(const TIOPDFPaperSize value); System::TObject* __fastcall GetImageEnIO(); public: bool IsNativePixelFormat; int fDpiX; int fDpiY; Hyiedefs::PRGBROW fColorMap; int fColorMapCount; int fIEN_LayerCount; int fIEN_Version; TIOICOSizes ICO_Sizes; TIOICOBitCount ICO_BitCount; TIEICC* fInputICC; TIEICC* fOutputICC; TIEICC* fDefaultICC; __property System::WideString FileName = {read=fFileName, write=fFileName}; __property System::UnicodeString FileTypeStr = {read=GetFileTypeStr}; __property Hyieutils::TIOFileType FileType = {read=fFileType, write=fFileType, nodefault}; __property int BitsPerSample = {read=fBitsPerSample, write=fBitsPerSample, nodefault}; __property int SamplesPerPixel = {read=fSamplesPerPixel, write=fSamplesPerPixel, nodefault}; __property int Width = {read=fWidth, write=fWidth, nodefault}; __property int Height = {read=fHeight, write=fHeight, nodefault}; __property int DpiX = {read=fDpiX, write=SetDpiX, nodefault}; __property int DpiY = {read=fDpiY, write=SetDpiY, nodefault}; __property int Dpi = {read=fDpiX, write=SetDpi, nodefault}; __property Hyiedefs::PRGBROW ColorMap = {read=fColorMap}; __property int ColorMapCount = {read=fColorMapCount, nodefault}; __property int ImageIndex = {read=fImageIndex, write=SetImageIndex, nodefault}; __property int ImageCount = {read=fImageCount, write=SetImageCount, nodefault}; __property int ImageDelayTime = {read=GetImageDelayTime, nodefault}; __property bool GetThumbnail = {read=fGetThumbnail, write=SetGetThumbnail, nodefault}; __property Hyieutils::TIEDictionary* Dict = {read=fDict}; __property bool IsResource = {read=fIsResource, write=SetIsResource, nodefault}; __property bool EnableAdjustOrientation = {read=fEnableAdjustOrientation, write=SetEnableAdjustOrientation, nodefault}; __property TIEICC* InputICCProfile = {read=GetInputICC}; __property TIEICC* OutputICCProfile = {read=GetOutputICC}; __property TIEICC* DefaultICCProfile = {read=GetDefaultICC}; __property TIEIPTCInfoList* IPTC_Info = {read=fIPTC_Info}; __property System::UnicodeString IPTC_Photoshop[int FieldID] = {read=GetIPTC_Photoshop, write=SetIPTC_Photoshop}; __property TIEImagingAnnot* ImagingAnnot = {read=GetImagingAnnot}; __property TIEImageEnAnnot* ImageEnAnnot = {read=fImageEnAnnot}; __property TIOTIFFCompression TIFF_Compression = {read=fTIFF_Compression, write=fTIFF_Compression, nodefault}; __property int TIFF_ImageIndex = {read=fTIFF_ImageIndex, write=SetImageIndex, nodefault}; __property int TIFF_SubIndex = {read=fTIFF_SubIndex, write=fTIFF_SubIndex, nodefault}; __property int TIFF_ImageCount = {read=fTIFF_ImageCount, write=SetImageCount, nodefault}; __property TIOTIFFPhotometInterpret TIFF_PhotometInterpret = {read=fTIFF_PhotometInterpret, write=fTIFF_PhotometInterpret, nodefault}; __property int TIFF_PlanarConf = {read=fTIFF_PlanarConf, write=fTIFF_PlanarConf, nodefault}; __property int TIFF_NewSubfileType = {read=fTIFF_NewSubfileType, write=fTIFF_NewSubfileType, nodefault}; __property int TIFF_XPos = {read=fTIFF_XPos, write=fTIFF_XPos, nodefault}; __property int TIFF_GetTile = {read=fTIFF_GetTile, write=fTIFF_GetTile, nodefault}; __property int TIFF_YPos = {read=fTIFF_YPos, write=fTIFF_YPos, nodefault}; __property System::AnsiString TIFF_DocumentName = {read=fTIFF_DocumentName, write=fTIFF_DocumentName}; __property System::AnsiString TIFF_ImageDescription = {read=fTIFF_ImageDescription, write=fTIFF_ImageDescription}; __property System::AnsiString TIFF_PageName = {read=fTIFF_PageName, write=fTIFF_PageName}; __property int TIFF_PageNumber = {read=fTIFF_PageNumber, write=fTIFF_PageNumber, nodefault}; __property int TIFF_PageCount = {read=fTIFF_PageCount, write=fTIFF_PageCount, nodefault}; __property int TIFF_Orientation = {read=fTIFF_Orientation, write=SetTIFF_Orientation, nodefault}; __property bool TIFF_EnableAdjustOrientation = {read=fTIFF_EnableAdjustOrientation, write=fTIFF_EnableAdjustOrientation, nodefault}; __property Hyiedefs::TTIFFLZWDecompFunc TIFF_LZWDecompFunc = {read=fTIFF_LZWDecompFunc, write=fTIFF_LZWDecompFunc}; __property Hyiedefs::TTIFFLZWCompFunc TIFF_LZWCompFunc = {read=fTIFF_LZWCompFunc, write=fTIFF_LZWCompFunc}; __property int TIFF_JPEGQuality = {read=fTIFF_JPEGQuality, write=fTIFF_JPEGQuality, nodefault}; __property TIOJPEGColorspace TIFF_JPEGColorSpace = {read=fTIFF_JPEGColorSpace, write=fTIFF_JPEGColorSpace, nodefault}; __property int TIFF_FillOrder = {read=fTIFF_FillOrder, write=fTIFF_FillOrder, nodefault}; __property int TIFF_ZIPCompression = {read=fTIFF_ZIPCompression, write=fTIFF_ZIPCompression, nodefault}; __property int TIFF_StripCount = {read=fTIFF_StripCount, write=fTIFF_StripCount, nodefault}; __property TIOByteOrder TIFF_ByteOrder = {read=fTIFF_ByteOrder, write=fTIFF_ByteOrder, nodefault}; __property Hyiedefs::TIEArrayOfByte TIFF_PhotoshopImageResources = {read=fTIFF_PhotoshopImageResources, write=fTIFF_PhotoshopImageResources}; __property Hyiedefs::TIEArrayOfByte TIFF_PhotoshopImageSourceData = {read=fTIFF_PhotoshopImageSourceData, write=fTIFF_PhotoshopImageSourceData}; __property bool TIFF_BigTIFF = {read=fTIFF_BigTIFF, write=fTIFF_BigTIFF, nodefault}; __property System::AnsiString GIF_Version = {read=fGIF_Version, write=fGIF_Version}; __property int GIF_ImageIndex = {read=fGIF_ImageIndex, write=SetImageIndex, nodefault}; __property int GIF_ImageCount = {read=fGIF_ImageCount, write=SetImageCount, nodefault}; __property int GIF_XPos = {read=fGIF_XPos, write=fGIF_XPos, nodefault}; __property int GIF_YPos = {read=fGIF_YPos, write=fGIF_YPos, nodefault}; __property int GIF_DelayTime = {read=fGIF_DelayTime, write=fGIF_DelayTime, nodefault}; __property bool GIF_FlagTranspColor = {read=fGIF_FlagTranspColor, write=fGIF_FlagTranspColor, nodefault}; __property Hyiedefs::TRGB GIF_TranspColor = {read=fGIF_TranspColor, write=fGIF_TranspColor}; __property bool GIF_Interlaced = {read=fGIF_Interlaced, write=fGIF_Interlaced, nodefault}; __property int GIF_WinWidth = {read=fGIF_WinWidth, write=fGIF_WinWidth, nodefault}; __property int GIF_WinHeight = {read=fGIF_WinHeight, write=fGIF_WinHeight, nodefault}; __property Hyiedefs::TRGB GIF_Background = {read=fGIF_Background, write=fGIF_Background}; __property int GIF_Ratio = {read=fGIF_Ratio, write=fGIF_Ratio, nodefault}; __property System::Classes::TStringList* GIF_Comments = {read=fGIF_Comments}; __property TIEGIFAction GIF_Action = {read=fGIF_Action, write=fGIF_Action, nodefault}; __property bool GIF_RAWLoad = {read=fGIF_RAWLoad, write=fGIF_RAWLoad, nodefault}; __property Hyiedefs::TGIFLZWDecompFunc GIF_LZWDecompFunc = {read=fGIF_LZWDecompFunc, write=fGIF_LZWDecompFunc}; __property Hyiedefs::TGIFLZWCompFunc GIF_LZWCompFunc = {read=fGIF_LZWCompFunc, write=fGIF_LZWCompFunc}; __property int DCX_ImageIndex = {read=fDCX_ImageIndex, write=SetImageIndex, nodefault}; __property TIOJPEGColorspace JPEG_ColorSpace = {read=fJPEG_ColorSpace, write=fJPEG_ColorSpace, nodefault}; __property int JPEG_Quality = {read=fJPEG_Quality, write=fJPEG_Quality, nodefault}; __property TIOJPEGDctMethod JPEG_DCTMethod = {read=fJPEG_DCTMethod, write=fJPEG_DCTMethod, nodefault}; __property TIOJPEGCromaSubsampling JPEG_CromaSubsampling = {read=fJPEG_CromaSubsampling, write=fJPEG_CromaSubsampling, nodefault}; __property bool JPEG_OptimalHuffman = {read=fJPEG_OptimalHuffman, write=fJPEG_OptimalHuffman, nodefault}; __property int JPEG_Smooth = {read=fJPEG_Smooth, write=fJPEG_Smooth, nodefault}; __property bool JPEG_Progressive = {read=fJPEG_Progressive, write=fJPEG_Progressive, nodefault}; __property TIOJPEGScale JPEG_Scale = {read=fJPEG_Scale, write=fJPEG_Scale, nodefault}; __property TIEMarkerList* JPEG_MarkerList = {read=fJPEG_MarkerList}; __property int JPEG_Scale_Used = {read=fJPEG_Scale_Used, write=fJPEG_Scale_Used, nodefault}; __property int JPEG_WarningTot = {read=fJPEG_WarningTot, write=fJPEG_WarningTot, nodefault}; __property int JPEG_WarningCode = {read=fJPEG_WarningCode, write=fJPEG_WarningCode, nodefault}; __property int JPEG_OriginalWidth = {read=fOriginalWidth, write=fOriginalWidth, nodefault}; __property int JPEG_OriginalHeight = {read=fOriginalHeight, write=fOriginalHeight, nodefault}; __property int OriginalWidth = {read=fOriginalWidth, write=fOriginalWidth, nodefault}; __property int OriginalHeight = {read=fOriginalHeight, write=fOriginalHeight, nodefault}; __property bool JPEG_EnableAdjustOrientation = {read=fJPEG_EnableAdjustOrientation, write=fJPEG_EnableAdjustOrientation, nodefault}; __property bool JPEG_GetExifThumbnail = {read=fJPEG_GetExifThumbnail, write=SetJPEG_GetExifThumbnail, nodefault}; __property TIOJ2000ColorSpace J2000_ColorSpace = {read=fJ2000_ColorSpace, write=fJ2000_ColorSpace, nodefault}; __property double J2000_Rate = {read=fJ2000_Rate, write=fJ2000_Rate}; __property TIOJ2000ScalableBy J2000_ScalableBy = {read=fJ2000_ScalableBy, write=fJ2000_ScalableBy, nodefault}; __property int PCX_Version = {read=fPCX_Version, write=fPCX_Version, nodefault}; __property TIOPCXCompression PCX_Compression = {read=fPCX_Compression, write=fPCX_Compression, nodefault}; __property TIOBMPVersion BMP_Version = {read=fBMP_Version, write=fBMP_Version, nodefault}; __property TIOBMPCompression BMP_Compression = {read=fBMP_Compression, write=fBMP_Compression, nodefault}; __property bool BMP_HandleTransparency = {read=fBMP_HandleTransparency, write=fBMP_HandleTransparency, nodefault}; __property int ICO_ImageIndex = {read=fICO_ImageIndex, write=SetImageIndex, nodefault}; __property Hyiedefs::TRGB ICO_Background = {read=fICO_Background, write=fICO_Background}; __property int CUR_ImageIndex = {read=fCUR_ImageIndex, write=SetImageIndex, nodefault}; __property int CUR_XHotSpot = {read=fCUR_XHotSpot, write=fCUR_XHotSpot, nodefault}; __property int CUR_YHotSpot = {read=fCUR_YHotSpot, write=fCUR_YHotSpot, nodefault}; __property Hyiedefs::TRGB CUR_Background = {read=fCUR_Background, write=fCUR_Background}; __property TIEDicomTags* DICOM_Tags = {read=fDICOM_Tags}; __property double DICOM_WindowCenterOffset = {read=fDICOM_WindowCenterOffset, write=fDICOM_WindowCenterOffset}; __property double DICOM_RescaleIntercept = {read=fDICOM_RescaleIntercept, write=fDICOM_RescaleIntercept}; __property double DICOM_RescaleSlope = {read=fDICOM_RescaleSlope, write=fDICOM_RescaleSlope}; __property double DICOM_WindowCenter = {read=fDICOM_WindowCenter, write=fDICOM_WindowCenter}; __property double DICOM_WindowWidth = {read=fDICOM_WindowWidth, write=fDICOM_WindowWidth}; __property TIEDicomRange DICOM_Range = {read=fDICOM_Range, write=fDICOM_Range, nodefault}; __property TIEDicomCompression DICOM_Compression = {read=GetDICOM_Compression, write=SetDICOM_Compression, nodefault}; __property int DICOM_JPEGQuality = {read=fDICOM_JPEGQuality, write=fDICOM_JPEGQuality, nodefault}; __property double DICOM_J2000Rate = {read=fDICOM_J2000Rate, write=fDICOM_J2000Rate}; __property bool PNG_Interlaced = {read=fPNG_Interlaced, write=fPNG_Interlaced, nodefault}; __property Hyiedefs::TRGB PNG_Background = {read=fPNG_Background, write=fPNG_Background}; __property TIOPNGFilter PNG_Filter = {read=fPNG_Filter, write=fPNG_Filter, nodefault}; __property int PNG_Compression = {read=fPNG_Compression, write=fPNG_Compression, nodefault}; __property System::Classes::TStringList* PNG_TextKeys = {read=fPNG_TextKeys}; __property System::Classes::TStringList* PNG_TextValues = {read=fPNG_TextValues}; __property bool PSD_LoadLayers = {read=fPSD_LoadLayers, write=fPSD_LoadLayers, nodefault}; __property bool PSD_ReplaceLayers = {read=fPSD_ReplaceLayers, write=fPSD_ReplaceLayers, nodefault}; __property bool PSD_HasPremultipliedAlpha = {read=fPSD_HasPremultipliedAlpha, nodefault}; __property bool PSD_LargeDocumentFormat = {read=fPSD_LargeDocumentFormat, write=fPSD_LargeDocumentFormat, nodefault}; __property System::AnsiString PSD_SelectLayer = {read=fPSD_SelectLayer, write=fPSD_SelectLayer}; __property double HDP_ImageQuality = {read=fHDP_ImageQuality, write=fHDP_ImageQuality}; __property bool HDP_Lossless = {read=fHDP_Lossless, write=fHDP_Lossless, nodefault}; __property int TGA_XPos = {read=fTGA_XPos, write=fTGA_XPos, nodefault}; __property int TGA_YPos = {read=fTGA_YPos, write=fTGA_YPos, nodefault}; __property bool TGA_Compressed = {read=fTGA_Compressed, write=fTGA_Compressed, nodefault}; __property System::AnsiString TGA_Descriptor = {read=fTGA_Descriptor, write=fTGA_Descriptor}; __property System::AnsiString TGA_Author = {read=fTGA_Author, write=fTGA_Author}; __property System::TDateTime TGA_Date = {read=fTGA_Date, write=fTGA_Date}; __property System::AnsiString TGA_ImageName = {read=fTGA_ImageName, write=fTGA_ImageName}; __property Hyiedefs::TRGB TGA_Background = {read=fTGA_Background, write=fTGA_Background}; __property double TGA_AspectRatio = {read=fTGA_AspectRatio, write=fTGA_AspectRatio}; __property double TGA_Gamma = {read=fTGA_Gamma, write=fTGA_Gamma}; __property bool TGA_GrayLevel = {read=fTGA_GrayLevel, write=fTGA_GrayLevel, nodefault}; __property int AVI_FrameCount = {read=fAVI_FrameCount, write=SetImageCount, nodefault}; __property double AVI_FrameDelayTime = {read=fAVI_FrameDelayTime, write=fAVI_FrameDelayTime}; __property int MEDIAFILE_FrameCount = {read=fMEDIAFILE_FrameCount, write=SetImageCount, nodefault}; __property double MEDIAFILE_FrameDelayTime = {read=fMEDIAFILE_FrameDelayTime, write=fMEDIAFILE_FrameDelayTime}; __property System::Classes::TStringList* PXM_Comments = {read=fPXM_Comments}; __property int PS_PaperWidth = {read=fPS_PaperWidth, write=fPS_PaperWidth, nodefault}; __property int PS_PaperHeight = {read=fPS_PaperHeight, write=fPS_PaperHeight, nodefault}; __property TIOPDFPaperSize PS_PaperSize = {read=GetPS_PaperSize, write=SetPS_PaperSize, nodefault}; __property TIOPSCompression PS_Compression = {read=fPS_Compression, write=fPS_Compression, nodefault}; __property System::AnsiString PS_Title = {read=fPS_Title, write=fPS_Title}; __property int PDF_PaperWidth = {read=fPDF_PaperWidth, write=fPDF_PaperWidth, nodefault}; __property int PDF_PaperHeight = {read=fPDF_PaperHeight, write=fPDF_PaperHeight, nodefault}; __property TIOPDFPaperSize PDF_PaperSize = {read=GetPDF_PaperSize, write=SetPDF_PaperSize, nodefault}; __property TIOPDFCompression PDF_Compression = {read=fPDF_Compression, write=fPDF_Compression, nodefault}; __property System::AnsiString PDF_Title = {read=fPDF_Title, write=fPDF_Title}; __property System::AnsiString PDF_Author = {read=fPDF_Author, write=fPDF_Author}; __property System::AnsiString PDF_Subject = {read=fPDF_Subject, write=fPDF_Subject}; __property System::AnsiString PDF_Keywords = {read=fPDF_Keywords, write=fPDF_Keywords}; __property System::AnsiString PDF_Creator = {read=fPDF_Creator, write=fPDF_Creator}; __property System::AnsiString PDF_Producer = {read=fPDF_Producer, write=fPDF_Producer}; __property System::Classes::TList* EXIF_Tags = {read=fEXIF_Tags}; __property bool EXIF_HasEXIFData = {read=fEXIF_HasEXIFData, write=fEXIF_HasEXIFData, nodefault}; __property TIEBitmap* EXIF_Bitmap = {read=fEXIF_Bitmap, write=fEXIF_Bitmap}; __property System::AnsiString EXIF_ImageDescription = {read=fEXIF_ImageDescription, write=fEXIF_ImageDescription}; __property System::AnsiString EXIF_Make = {read=fEXIF_Make, write=fEXIF_Make}; __property System::AnsiString EXIF_Model = {read=fEXIF_Model, write=fEXIF_Model}; __property int EXIF_Orientation = {read=fEXIF_Orientation, write=SetEXIF_Orientation, nodefault}; __property double EXIF_XResolution = {read=fEXIF_XResolution, write=SetEXIF_XResolution}; __property double EXIF_YResolution = {read=fEXIF_YResolution, write=SetEXIF_YResolution}; __property int EXIF_ResolutionUnit = {read=fEXIF_ResolutionUnit, write=fEXIF_ResolutionUnit, nodefault}; __property System::AnsiString EXIF_Software = {read=fEXIF_Software, write=fEXIF_Software}; __property System::AnsiString EXIF_Artist = {read=fEXIF_Artist, write=fEXIF_Artist}; __property System::AnsiString EXIF_DateTime = {read=fEXIF_DateTime, write=fEXIF_DateTime}; __property System::TDateTime EXIF_DateTime2 = {read=GetEXIF_DateTime2, write=SetEXIF_DateTime2}; __property double EXIF_WhitePoint[int index] = {read=GetEXIF_WhitePoint, write=SetEXIF_WhitePoint}; __property double EXIF_PrimaryChromaticities[int index] = {read=GetEXIF_PrimaryChromaticities, write=SetEXIF_PrimaryChromaticities}; __property double EXIF_YCbCrCoefficients[int index] = {read=GetEXIF_YCbCrCoefficients, write=SetEXIF_YCbCrCoefficients}; __property int EXIF_YCbCrPositioning = {read=fEXIF_YCbCrPositioning, write=fEXIF_YCbCrPositioning, nodefault}; __property double EXIF_ReferenceBlackWhite[int index] = {read=GetEXIF_ReferenceBlackWhite, write=SetEXIF_ReferenceBlackWhite}; __property System::AnsiString EXIF_Copyright = {read=fEXIF_Copyright, write=fEXIF_Copyright}; __property double EXIF_ExposureTime = {read=fEXIF_ExposureTime, write=SetEXIF_ExposureTime}; __property double EXIF_FNumber = {read=fEXIF_FNumber, write=SetEXIF_FNumber}; __property int EXIF_ExposureProgram = {read=fEXIF_ExposureProgram, write=SetEXIF_ExposureProgram, nodefault}; __property int EXIF_ISOSpeedRatings[int index] = {read=GetEXIF_ISOSpeedRatings, write=SetEXIF_ISOSpeedRatings}; __property System::AnsiString EXIF_ExifVersion = {read=fEXIF_ExifVersion, write=fEXIF_ExifVersion}; __property System::AnsiString EXIF_DateTimeOriginal = {read=fEXIF_DateTimeOriginal, write=fEXIF_DateTimeOriginal}; __property System::TDateTime EXIF_DateTimeOriginal2 = {read=GetEXIF_DateTimeOriginal2, write=SetEXIF_DateTimeOriginal2}; __property System::AnsiString EXIF_DateTimeDigitized = {read=fEXIF_DateTimeDigitized, write=fEXIF_DateTimeDigitized}; __property System::TDateTime EXIF_DateTimeDigitized2 = {read=GetEXIF_DateTimeDigitized2, write=SetEXIF_DateTimeDigitized2}; __property double EXIF_CompressedBitsPerPixel = {read=fEXIF_CompressedBitsPerPixel, write=SetEXIF_CompressedBitsPerPixel}; __property double EXIF_ShutterSpeedValue = {read=fEXIF_ShutterSpeedValue, write=SetEXIF_ShutterSpeedValue}; __property double EXIF_ApertureValue = {read=fEXIF_ApertureValue, write=SetEXIF_ApertureValue}; __property double EXIF_BrightnessValue = {read=fEXIF_BrightnessValue, write=SetEXIF_BrightnessValue}; __property double EXIF_ExposureBiasValue = {read=fEXIF_ExposureBiasValue, write=SetEXIF_ExposureBiasValue}; __property double EXIF_MaxApertureValue = {read=fEXIF_MaxApertureValue, write=SetEXIF_MaxApertureValue}; __property double EXIF_SubjectDistance = {read=fEXIF_SubjectDistance, write=SetEXIF_SubjectDistance}; __property int EXIF_MeteringMode = {read=fEXIF_MeteringMode, write=SetEXIF_MeteringMode, nodefault}; __property int EXIF_LightSource = {read=fEXIF_LightSource, write=SetEXIF_LightSource, nodefault}; __property int EXIF_Flash = {read=fEXIF_Flash, write=SetEXIF_Flash, nodefault}; __property double EXIF_FocalLength = {read=fEXIF_FocalLength, write=SetEXIF_FocalLength}; __property System::AnsiString EXIF_SubsecTime = {read=fEXIF_SubsecTime, write=fEXIF_SubsecTime}; __property System::AnsiString EXIF_SubsecTimeOriginal = {read=fEXIF_SubsecTimeOriginal, write=fEXIF_SubsecTimeOriginal}; __property System::AnsiString EXIF_SubsecTimeDigitized = {read=fEXIF_SubsecTimeDigitized, write=fEXIF_SubsecTimeDigitized}; __property System::AnsiString EXIF_FlashPixVersion = {read=fEXIF_FlashPixVersion, write=fEXIF_FlashPixVersion}; __property int EXIF_ColorSpace = {read=fEXIF_ColorSpace, write=SetEXIF_ColorSpace, nodefault}; __property int EXIF_ExifImageWidth = {read=fEXIF_ExifImageWidth, write=SetEXIF_ExifImageWidth, nodefault}; __property int EXIF_ExifImageHeight = {read=fEXIF_ExifImageHeight, write=SetEXIF_ExifImageHeight, nodefault}; __property System::AnsiString EXIF_RelatedSoundFile = {read=fEXIF_RelatedSoundFile, write=fEXIF_RelatedSoundFile}; __property double EXIF_FocalPlaneXResolution = {read=fEXIF_FocalPlaneXResolution, write=SetEXIF_FocalPlaneXResolution}; __property double EXIF_FocalPlaneYResolution = {read=fEXIF_FocalPlaneYResolution, write=SetEXIF_FocalPlaneYResolution}; __property int EXIF_FocalPlaneResolutionUnit = {read=fEXIF_FocalPlaneResolutionUnit, write=SetEXIF_FocalPlaneResolutionUnit, nodefault}; __property double EXIF_ExposureIndex = {read=fEXIF_ExposureIndex, write=SetEXIF_ExposureIndex}; __property int EXIF_SensingMethod = {read=fEXIF_SensingMethod, write=SetEXIF_SensingMethod, nodefault}; __property int EXIF_FileSource = {read=fEXIF_FileSource, write=SetEXIF_FileSource, nodefault}; __property int EXIF_SceneType = {read=fEXIF_SceneType, write=SetEXIF_SceneType, nodefault}; __property System::WideString EXIF_UserComment = {read=fEXIF_UserComment, write=fEXIF_UserComment}; __property System::AnsiString EXIF_UserCommentCode = {read=fEXIF_UserCommentCode, write=fEXIF_UserCommentCode}; __property TIETagsHandler* EXIF_MakerNote = {read=fEXIF_MakerNote}; __property System::WideString EXIF_XPTitle = {read=fEXIF_XPTitle, write=fEXIF_XPTitle}; __property int EXIF_XPRating = {read=fEXIF_XPRating, write=fEXIF_XPRating, nodefault}; __property System::WideString EXIF_XPComment = {read=fEXIF_XPComment, write=fEXIF_XPComment}; __property System::WideString EXIF_XPAuthor = {read=fEXIF_XPAuthor, write=fEXIF_XPAuthor}; __property System::WideString EXIF_XPKeywords = {read=fEXIF_XPKeywords, write=fEXIF_XPKeywords}; __property System::WideString EXIF_XPSubject = {read=fEXIF_XPSubject, write=fEXIF_XPSubject}; __property int EXIF_ExposureMode = {read=fEXIF_ExposureMode, write=fEXIF_ExposureMode, nodefault}; __property int EXIF_WhiteBalance = {read=fEXIF_WhiteBalance, write=fEXIF_WhiteBalance, nodefault}; __property double EXIF_DigitalZoomRatio = {read=fEXIF_DigitalZoomRatio, write=fEXIF_DigitalZoomRatio}; __property int EXIF_FocalLengthIn35mmFilm = {read=fEXIF_FocalLengthIn35mmFilm, write=fEXIF_FocalLengthIn35mmFilm, nodefault}; __property int EXIF_SceneCaptureType = {read=fEXIF_SceneCaptureType, write=fEXIF_SceneCaptureType, nodefault}; __property int EXIF_GainControl = {read=fEXIF_GainControl, write=fEXIF_GainControl, nodefault}; __property int EXIF_Contrast = {read=fEXIF_Contrast, write=fEXIF_Contrast, nodefault}; __property int EXIF_Saturation = {read=fEXIF_Saturation, write=fEXIF_Saturation, nodefault}; __property int EXIF_Sharpness = {read=fEXIF_Sharpness, write=fEXIF_Sharpness, nodefault}; __property int EXIF_SubjectDistanceRange = {read=fEXIF_SubjectDistanceRange, write=fEXIF_SubjectDistanceRange, nodefault}; __property System::AnsiString EXIF_ImageUniqueID = {read=fEXIF_ImageUniqueID, write=fEXIF_ImageUniqueID}; __property System::AnsiString EXIF_CameraOwnerName = {read=fEXIF_CameraOwnerName, write=fEXIF_CameraOwnerName}; __property System::AnsiString EXIF_BodySerialNumber = {read=fEXIF_BodySerialNumber, write=fEXIF_BodySerialNumber}; __property System::AnsiString EXIF_LensMake = {read=fEXIF_LensMake, write=fEXIF_LensMake}; __property System::AnsiString EXIF_LensModel = {read=fEXIF_LensModel, write=fEXIF_LensModel}; __property System::AnsiString EXIF_LensSerialNumber = {read=fEXIF_LensSerialNumber, write=fEXIF_LensSerialNumber}; __property double EXIF_Gamma = {read=fEXIF_Gamma, write=SetEXIF_Gamma}; __property int EXIF_SubjectArea[int Index] = {read=GetEXIF_SubjectArea, write=SetEXIF_SubjectArea}; __property int EXIF_SubjectLocationX = {read=fEXIF_SubjectLocationX, write=SetEXIF_SubjectLocationX, nodefault}; __property int EXIF_SubjectLocationY = {read=fEXIF_SubjectLocationY, write=SetEXIF_SubjectLocationY, nodefault}; __property System::AnsiString EXIF_GPSVersionID = {read=fEXIF_GPSVersionID, write=fEXIF_GPSVersionID}; __property double EXIF_GPSLatitude = {read=GetEXIF_GPSLatitude, write=SetEXIF_GPSLatitude}; __property System::UnicodeString EXIF_GPSLatitude_Str = {read=GetEXIF_GPSLatitude_Str}; __property System::AnsiString EXIF_GPSLatitudeRef = {read=fEXIF_GPSLatitudeRef, write=fEXIF_GPSLatitudeRef}; __property double EXIF_GPSLatitudeDegrees = {read=fEXIF_GPSLatitudeDegrees, write=fEXIF_GPSLatitudeDegrees}; __property double EXIF_GPSLatitudeMinutes = {read=fEXIF_GPSLatitudeMinutes, write=fEXIF_GPSLatitudeMinutes}; __property double EXIF_GPSLatitudeSeconds = {read=fEXIF_GPSLatitudeSeconds, write=fEXIF_GPSLatitudeSeconds}; __property double EXIF_GPSLongitude = {read=GetEXIF_GPSLongitude, write=SetEXIF_GPSLongitude}; __property System::UnicodeString EXIF_GPSLongitude_Str = {read=GetEXIF_GPSLongitude_Str}; __property System::AnsiString EXIF_GPSLongitudeRef = {read=fEXIF_GPSLongitudeRef, write=fEXIF_GPSLongitudeRef}; __property double EXIF_GPSLongitudeDegrees = {read=fEXIF_GPSLongitudeDegrees, write=fEXIF_GPSLongitudeDegrees}; __property double EXIF_GPSLongitudeMinutes = {read=fEXIF_GPSLongitudeMinutes, write=fEXIF_GPSLongitudeMinutes}; __property double EXIF_GPSLongitudeSeconds = {read=fEXIF_GPSLongitudeSeconds, write=fEXIF_GPSLongitudeSeconds}; __property System::AnsiString EXIF_GPSAltitudeRef = {read=fEXIF_GPSAltitudeRef, write=fEXIF_GPSAltitudeRef}; __property double EXIF_GPSAltitude = {read=fEXIF_GPSAltitude, write=fEXIF_GPSAltitude}; __property double EXIF_GPSTimeStampHour = {read=fEXIF_GPSTimeStampHour, write=fEXIF_GPSTimeStampHour}; __property double EXIF_GPSTimeStampMinute = {read=fEXIF_GPSTimeStampMinute, write=fEXIF_GPSTimeStampMinute}; __property double EXIF_GPSTimeStampSecond = {read=fEXIF_GPSTimeStampSecond, write=fEXIF_GPSTimeStampSecond}; __property System::AnsiString EXIF_GPSSatellites = {read=fEXIF_GPSSatellites, write=fEXIF_GPSSatellites}; __property System::AnsiString EXIF_GPSStatus = {read=fEXIF_GPSStatus, write=fEXIF_GPSStatus}; __property System::AnsiString EXIF_GPSMeasureMode = {read=fEXIF_GPSMeasureMode, write=fEXIF_GPSMeasureMode}; __property double EXIF_GPSDOP = {read=fEXIF_GPSDOP, write=fEXIF_GPSDOP}; __property System::AnsiString EXIF_GPSSpeedRef = {read=fEXIF_GPSSpeedRef, write=fEXIF_GPSSpeedRef}; __property double EXIF_GPSSpeed = {read=fEXIF_GPSSpeed, write=fEXIF_GPSSpeed}; __property System::AnsiString EXIF_GPSTrackRef = {read=fEXIF_GPSTrackRef, write=fEXIF_GPSTrackRef}; __property double EXIF_GPSTrack = {read=fEXIF_GPSTrack, write=fEXIF_GPSTrack}; __property System::AnsiString EXIF_GPSImgDirectionRef = {read=fEXIF_GPSImgDirectionRef, write=fEXIF_GPSImgDirectionRef}; __property double EXIF_GPSImgDirection = {read=fEXIF_GPSImgDirection, write=fEXIF_GPSImgDirection}; __property System::AnsiString EXIF_GPSMapDatum = {read=fEXIF_GPSMapDatum, write=fEXIF_GPSMapDatum}; __property System::AnsiString EXIF_GPSDestLatitudeRef = {read=fEXIF_GPSDestLatitudeRef, write=fEXIF_GPSDestLatitudeRef}; __property double EXIF_GPSDestLatitudeDegrees = {read=fEXIF_GPSDestLatitudeDegrees, write=fEXIF_GPSDestLatitudeDegrees}; __property double EXIF_GPSDestLatitudeMinutes = {read=fEXIF_GPSDestLatitudeMinutes, write=fEXIF_GPSDestLatitudeMinutes}; __property double EXIF_GPSDestLatitudeSeconds = {read=fEXIF_GPSDestLatitudeSeconds, write=fEXIF_GPSDestLatitudeSeconds}; __property System::AnsiString EXIF_GPSDestLongitudeRef = {read=fEXIF_GPSDestLongitudeRef, write=fEXIF_GPSDestLatitudeRef}; __property double EXIF_GPSDestLongitudeDegrees = {read=fEXIF_GPSDestLongitudeDegrees, write=fEXIF_GPSDestLongitudeDegrees}; __property double EXIF_GPSDestLongitudeMinutes = {read=fEXIF_GPSDestLongitudeMinutes, write=fEXIF_GPSDestLongitudeMinutes}; __property double EXIF_GPSDestLongitudeSeconds = {read=fEXIF_GPSDestLongitudeSeconds, write=fEXIF_GPSDestLongitudeSeconds}; __property System::AnsiString EXIF_GPSDestBearingRef = {read=fEXIF_GPSDestBearingRef, write=fEXIF_GPSDestBearingRef}; __property double EXIF_GPSDestBearing = {read=fEXIF_GPSDestBearing, write=fEXIF_GPSDestBearing}; __property System::AnsiString EXIF_GPSDestDistanceRef = {read=fEXIF_GPSDestDistanceRef, write=fEXIF_GPSDestDistanceRef}; __property double EXIF_GPSDestDistance = {read=fEXIF_GPSDestDistance, write=fEXIF_GPSDestDistance}; __property System::AnsiString EXIF_GPSDateStamp = {read=fEXIF_GPSDateStamp, write=fEXIF_GPSDateStamp}; __property System::AnsiString EXIF_InteropIndex = {read=fEXIF_InteropIndex, write=fEXIF_InteropIndex}; __property System::AnsiString EXIF_InteropVersion = {read=fEXIF_InteropVersion, write=fEXIF_InteropVersion}; __property System::AnsiString XMP_Info = {read=fXMP_Info, write=SetXMP_Info}; __property bool RAW_HalfSize = {read=fRAW_HalfSize, write=fRAW_HalfSize, nodefault}; __property double RAW_Gamma = {read=fRAW_Gamma, write=fRAW_Gamma}; __property double RAW_Bright = {read=fRAW_Bright, write=fRAW_Bright}; __property double RAW_RedScale = {read=fRAW_RedScale, write=fRAW_RedScale}; __property double RAW_BlueScale = {read=fRAW_BlueScale, write=fRAW_BlueScale}; __property bool RAW_QuickInterpolate = {read=fRAW_QuickInterpolate, write=fRAW_QuickInterpolate, nodefault}; __property bool RAW_UseAutoWB = {read=fRAW_UseAutoWB, write=fRAW_UseAutoWB, nodefault}; __property System::AnsiString RAW_ExtraParams = {read=fRAW_ExtraParams, write=fRAW_ExtraParams}; __property bool RAW_UseCameraWB = {read=fRAW_UseCameraWB, write=fRAW_UseCameraWB, nodefault}; __property bool RAW_FourColorRGB = {read=fRAW_FourColorRGB, write=fRAW_FourColorRGB, nodefault}; __property System::AnsiString RAW_Camera = {read=fRAW_Camera, write=fRAW_Camera}; __property bool RAW_GetExifThumbnail = {read=fRAW_GetExifThumbnail, write=SetRAW_GetExifThumbnail, nodefault}; __property bool RAW_AutoAdjustColors = {read=fRAW_AutoAdjustColors, write=fRAW_AutoAdjustColors, nodefault}; __property TIOBMPRAWChannelOrder BMPRAW_ChannelOrder = {read=fBMPRAW_ChannelOrder, write=fBMPRAW_ChannelOrder, nodefault}; __property TIOBMPRAWPlanes BMPRAW_Planes = {read=fBMPRAW_Planes, write=fBMPRAW_Planes, nodefault}; __property int BMPRAW_RowAlign = {read=fBMPRAW_RowAlign, write=fBMPRAW_RowAlign, nodefault}; __property int BMPRAW_HeaderSize = {read=fBMPRAW_HeaderSize, write=fBMPRAW_HeaderSize, nodefault}; __property TIOBMPRAWDataFormat BMPRAW_DataFormat = {read=fBMPRAW_DataFormat, write=fBMPRAW_DataFormat, nodefault}; __property int IEN_Compression = {read=fIEN_Compression, write=fIEN_Compression, nodefault}; __property System::WideString IEN_Description = {read=fIEN_Description, write=fIEN_Description}; __property int IEN_LayerCount = {read=fIEN_LayerCount, nodefault}; __property int IEN_Version = {read=fIEN_Version, nodefault}; __property bool IEN_GetThumbnail = {read=fIEN_GetThumbnail, write=fIEN_GetThumbnail, nodefault}; __property int SVG_ImageCompression = {read=fSVG_ImageCompression, write=fSVG_ImageCompression, nodefault}; __fastcall TIOParams(System::TObject* AttachTo); __fastcall virtual ~TIOParams(); void __fastcall SetDefaultParams(); void __fastcall Assign(TIOParams* Source); void __fastcall AssignCompressionInfo(TIOParams* Source); void __fastcall SaveToFile(const System::WideString FileName); void __fastcall SaveToStream(System::Classes::TStream* Stream); void __fastcall LoadFromFile(const System::WideString FileName, bool CheckMagicString = true); void __fastcall LoadFromStream(System::Classes::TStream* Stream, bool CheckMagicString = true); __property System::TObject* ImageEnIO = {read=GetImageEnIO}; void __fastcall ResetInfo(); void __fastcall ResetEXIF(); System::WideString __fastcall GetProperty(const System::WideString Prop); void __fastcall SetProperty(System::WideString Prop, System::WideString Value); void __fastcall UpdateEXIFThumbnail(int Width = 0xa0, int Height = 0xffffffff, Hyiedefs::TResampleFilter ResampleFilter = (Hyiedefs::TResampleFilter)(0x1)); void __fastcall FreeColorMap(); void __fastcall AdjustGPSCoordinates(); System::UnicodeString __fastcall ReadIPTCField(int iRecNo, int iFieldIndex)/* overload */; void __fastcall ReadIPTCField(int iRecNo, int iFieldIndex, System::Classes::TStrings* Dest)/* overload */; void __fastcall WriteIPTCField(int iRecNo, int iFieldIndex, const System::UnicodeString Value)/* overload */; void __fastcall WriteIPTCField(int iRecNo, int iFieldIndex, System::Classes::TStrings* ssValues)/* overload */; void __fastcall ClearIPTCField(int iRecNo, int iFieldIndex); bool __fastcall Read(const System::WideString FileName, Hyieutils::TIOFileType Format = 0x0)/* overload */; bool __fastcall Read(const System::WideString FileName, bool bUseExtension)/* overload */; bool __fastcall Read(System::Classes::TStream* Stream, Hyieutils::TIOFileType Format = 0x0)/* overload */; bool __fastcall Read(void * Buffer, int BufferSize, Hyieutils::TIOFileType Format = 0x0)/* overload */; }; typedef TIOParams TIOParamsVals; class PASCALIMPLEMENTATION TIOMultiParams : public System::TObject { typedef System::TObject inherited; private: System::Classes::TList* fParamsList; int __fastcall GetCount(); TIOParams* __fastcall GetParams(int idx); void __fastcall RemoveParam(int idx); void __fastcall InsertParam(int idx); void __fastcall MoveParam(int idx, int Destination); void __fastcall MoveParams(Hyiedefs::TIEArrayOfInteger IndexGroup, int Destination); void __fastcall SwapParams(int idx1, int idx2); void __fastcall CheckAllocated(int idx); public: __fastcall TIOMultiParams(); __fastcall virtual ~TIOMultiParams(); void __fastcall UpdateEx(int Operation, int Idx, int ExtraParam)/* overload */; void __fastcall UpdateEx(int Operation, int Idx, int ExtraParam, Hyiedefs::TIEArrayOfInteger IndexGroup)/* overload */; void __fastcall Allocate(int Count); void __fastcall Clear(); void __fastcall Assign(System::TObject* Source); void __fastcall DuplicateCompressionInfo(); __property int Count = {read=GetCount, nodefault}; __property TIOParams* Params[int idx] = {read=GetParams}; bool __fastcall Read(const System::WideString FileName, Hyieutils::TIOFileType Format = 0x0)/* overload */; bool __fastcall Read(const System::WideString FileName, bool bUseExtension)/* overload */; bool __fastcall Read(System::Classes::TStream* Stream, Hyieutils::TIOFileType Format = 0x0)/* overload */; bool __fastcall Read(void * Buffer, int BufferSize, Hyieutils::TIOFileType Format = 0x0)/* overload */; }; enum DECLSPEC_DENUM TIEDicomTagSource : unsigned char { dsStandard, dsDeprecated, dsProprietary }; enum DECLSPEC_DENUM TIEDicomTagType : unsigned char { dvAE, dvAS, dvAT, dvCS, dvDA, dvDS, dvDT, dvFD, dvFL, dvIS, dvLO, dvLT, dvOB, dvOF, dvOW, dvPN, dvSH, dvSL, dvSQ, dvSS, dvST, dvTM, dvUI, dvUL, dvUN, dvUR, dvUS, dvUT, dvUSorSS, dvUnknown }; struct DECLSPEC_DRECORD TIEDicomTag { public: System::Word Group; System::Word Element; TIEDicomTagType DataType; void *Data; int DataLen; System::Contnrs::TObjectList* Children; }; typedef TIEDicomTag *PIEDicomTag; class PASCALIMPLEMENTATION TIEDicomTags : public System::TObject { typedef System::TObject inherited; private: System::Classes::TList* fTags; bool fSorted; int __fastcall GetCount(); void __fastcall FreeTag(int Index); int __fastcall SetTag(PIEDicomTag Tag, bool ReplaceIfExist); public: __fastcall TIEDicomTags(); __fastcall virtual ~TIEDicomTags(); void __fastcall Clear(); void __fastcall SaveToStream(System::Classes::TStream* Stream); void __fastcall LoadFromStream(System::Classes::TStream* Stream); void __fastcall Assign(TIEDicomTags* Source); int __fastcall AddTag(System::Word Group, System::Word Element, TIEDicomTagType DataType, void * Data, int DataLen, System::Contnrs::TObjectList* Children = (System::Contnrs::TObjectList*)(0x0)); int __fastcall IndexOf(System::Word Group, System::Word Element)/* overload */; PIEDicomTag __fastcall GetTag(int Index)/* overload */; PIEDicomTag __fastcall GetTag(System::Word Group, System::Word Element)/* overload */; System::AnsiString __fastcall GetTagString(int Index)/* overload */; System::AnsiString __fastcall GetTagString(System::Word Group, System::Word Element)/* overload */; double __fastcall GetTagNumeric(int Index, double Default = 0.000000E+00)/* overload */; double __fastcall GetTagNumeric(System::Word Group, System::Word Element, double Default = 0.000000E+00)/* overload */; System::Contnrs::TObjectList* __fastcall GetTagChildren(System::Word Group, System::Word Element)/* overload */; System::Contnrs::TObjectList* __fastcall GetTagChildren(int Index)/* overload */; System::UnicodeString __fastcall GetTagDescription(int Index)/* overload */; System::UnicodeString __fastcall GetTagDescription(int Index, /* out */ TIEDicomTagSource &TagSource)/* overload */; __classmethod System::UnicodeString __fastcall GetTagDescription(System::Word Group, System::Word Element)/* overload */; __classmethod System::UnicodeString __fastcall GetTagDescription(System::Word Group, System::Word Element, /* out */ TIEDicomTagSource &TagSource)/* overload */; void __fastcall SetTagNumeric(System::Word Group, System::Word Element, double Value, bool ReplaceIfExist = true); void __fastcall SetTagString(System::Word Group, System::Word Element, System::AnsiString Value, bool ReplaceIfExist = true); void __fastcall SetTagByteBuffer(System::Word Group, System::Word Element, Winapi::Windows::PByte Buffer, int Length, bool ReplaceIfExist = true); void __fastcall DeleteTag(int Index)/* overload */; void __fastcall DeleteTag(System::Word Group, System::Word Element, bool DeleteAllInstances = false)/* overload */; void __fastcall DeleteGroup(System::Word Group); TIEDicomTags* __fastcall FindNestedTag(System::Word Group, System::Word Element, /* out */ int &Index, TIEDicomTags* StartFrom = (TIEDicomTags*)(0x0))/* overload */; TIEDicomTags* __fastcall FindNestedTag(System::Word Group, System::Word Element, /* out */ int &Index, System::Contnrs::TObjectList* StartFrom)/* overload */; __property int Count = {read=GetCount, nodefault}; __property bool Sorted = {read=fSorted, write=fSorted, nodefault}; }; class PASCALIMPLEMENTATION TIETIFTagsReader : public System::TObject { typedef System::TObject inherited; private: System::Classes::TStream* fFileStream; System::Classes::TStream* fStream; TIETIFFIFDReader* fIFD; int fNumi; public: __fastcall TIETIFTagsReader(const System::UnicodeString FileName, int ImageIndex); __fastcall TIETIFTagsReader(System::Classes::TStream* Stream, int ImageIndex); __fastcall TIETIFTagsReader(TIETIFTagsReader* tagReader, int IFDTag); __fastcall virtual ~TIETIFTagsReader(); __property int ImageCount = {read=fNumi, nodefault}; bool __fastcall TagExists(int Tag); int __fastcall TagLength(int Tag); __int64 __fastcall GetInteger(int Tag); int __fastcall GetIntegerIndexed(int Tag, int index); double __fastcall GetRational(int Tag, double defaultValue = 0.000000E+00); double __fastcall GetRationalIndexed(int Tag, int index, double defVal = 0.000000E+00); int __fastcall GetIntegerArray(int Tag, Hyiedefs::pint64array &ar); void * __fastcall GetRawData(int Tag); System::AnsiString __fastcall GetString(int Tag); System::AnsiString __fastcall GetMiniString(int Tag); public: /* TObject.Create */ inline __fastcall TIETIFTagsReader() : System::TObject() { } }; struct DECLSPEC_DRECORD TIEEXIFMakerNoteDeviceInfo { private: enum DECLSPEC_DENUM _TIEEXIFMakerNoteDeviceInfo__1 : unsigned char { iemnAbsolute, iemnTIFFHeader, iemnEXIFSegment }; enum DECLSPEC_DENUM _TIEEXIFMakerNoteDeviceInfo__2 : unsigned char { iemnNONE, iemnTIFF, iemnIFDOFFSET }; enum DECLSPEC_DENUM _TIEEXIFMakerNoteDeviceInfo__3 : unsigned char { ieboFromEXIF, ieboFromTIFFHeader, ieboLittleEndian, ieboBigEndian }; public: System::AnsiString signature; int sigbypass; _TIEEXIFMakerNoteDeviceInfo__1 base; _TIEEXIFMakerNoteDeviceInfo__2 headerType; TTIFFHeader TIFFHeader; _TIEEXIFMakerNoteDeviceInfo__3 byteOrder; }; typedef void __fastcall (__closure *TIETagsHandlerAddTagFunc)(int tagPosition, bool littleEndian, TTIFFTAG &tag); class PASCALIMPLEMENTATION TIETagsHandler : public System::TObject { typedef System::TObject inherited; private: void *fUnparsedData; int fUnparsedDataLength; TIEEXIFMakerNoteDeviceInfo fEXIFMakerInfo; System::Classes::TMemoryStream* fData; TIETIFFIFDReader* fIFD; void __fastcall SetUnparsedData(void * value); TIEEXIFMakerNoteDeviceInfo __fastcall CheckHeader(void * buffer, int bufferLen); public: __fastcall TIETagsHandler(); __fastcall virtual ~TIETagsHandler(); __property System::Classes::TMemoryStream* Data = {read=fData}; void __fastcall Update(); void __fastcall Assign(TIETagsHandler* source); void __fastcall Clear(); bool __fastcall TagExists(int Tag); int __fastcall TagLength(int Tag); int __fastcall GetInteger(int Tag); int __fastcall GetIntegerIndexed(int Tag, int index); double __fastcall GetRational(int Tag, double defaultValue = 0.000000E+00); double __fastcall GetRationalIndexed(int Tag, int index, double defVal = 0.000000E+00); int __fastcall GetIntegerArray(int Tag, Hyiedefs::pint64array &ar); void * __fastcall GetRawData(int Tag); System::AnsiString __fastcall GetString(int Tag); System::AnsiString __fastcall GetMiniString(int Tag); int __fastcall GetDataType(int Tag); __property void * UnparsedData = {read=fUnparsedData, write=SetUnparsedData}; __property int UnparsedDataLength = {read=fUnparsedDataLength, write=fUnparsedDataLength, nodefault}; void __fastcall ReadFromStreamUnparse(System::Classes::TStream* stream, int size); void __fastcall ReadFromStream(System::Classes::TStream* stream, int size, bool littleEndian, __int64 exifSegmentPos, bool clearOnFail, TIETagsHandlerAddTagFunc addTagFunc = 0x0); int __fastcall WriteToStream(System::Classes::TStream* stream, __int64 exifSegmentPos); }; class PASCALIMPLEMENTATION TIETagsHandlerRelocator : public System::TObject { typedef System::TObject inherited; private: System::Classes::TStream* Stream; __int64 Position; __int64 Offset; bool LittleEndian; TIETagsHandler* TagsHandler; void __fastcall AddTagFunc(int tagPosition, bool littleEndian, TTIFFTAG &tag); public: __fastcall TIETagsHandlerRelocator(System::Classes::TStream* Stream_, __int64 Position_, __int64 Offset_, bool LittleEndian_); __fastcall virtual ~TIETagsHandlerRelocator(); void __fastcall Relocate(); }; enum DECLSPEC_DENUM TIETagType : unsigned char { ttUnknown, ttByte, ttAscii, ttShort, ttLong, ttRational, ttSByte, ttUndefined, ttSShort, ttSLong, ttSRational, ttFloat, ttDouble, ttLongOffset }; class PASCALIMPLEMENTATION TIETIFFHandler : public System::TObject { typedef System::TObject inherited; private: bool fBigEndian; System::Word fVersion; System::Classes::TList* fPages; System::Classes::TList* fBuffers; bool __fastcall ReadHeader(System::Classes::TStream* Stream); System::Word __fastcall xword(System::Word value); unsigned __fastcall xdword(unsigned value); int __fastcall GetIntegerByCode(int page, int tagcode, int idx)/* overload */; int __fastcall GetIntegerByCode(System::Classes::TList* ifd, int tagcode, int idx)/* overload */; void __fastcall SortTags(int pageIndex)/* overload */; void __fastcall SortTags(System::Classes::TList* ifd)/* overload */; void * __fastcall GetValueRAWEx(int pageIndex, int tagIndex, int arrayIndex, int &tagType)/* overload */; void * __fastcall GetValueRAWEx(PTIFFTAG tag, int arrayIndex)/* overload */; bool __fastcall GetLittleEndian(); void __fastcall CheckPairTag(int tagCode, int &tgpos, int &tglen)/* overload */; bool __fastcall CheckPairTag(int tagCode)/* overload */; bool __fastcall CheckIFD(int tagCode); bool __fastcall ReadIFD(System::Classes::TStream* Stream, System::Classes::TList* Pages, System::Classes::TList* ifd, int insertPos); int __fastcall FindTag(System::Classes::TList* ifd, int tagCode)/* overload */; void __fastcall DeleteTag(int pageIndex, int tagIndex, bool checkOffsetTags)/* overload */; void __fastcall DeleteTag(System::Classes::TList* ifd, int tagIndex, bool checkOffsetTags)/* overload */; void __fastcall WriteIFD(System::Classes::TStream* Stream, System::Classes::TList* ifd, __int64 &dataPos); int __fastcall GetInteger(System::Classes::TList* ifd, int tagIndex, int arrayIndex)/* overload */; void __fastcall SetValue(System::Classes::TList* ifd, int tagCode, TIETagType tagType, const System::Variant &value)/* overload */; void __fastcall SetValueRAW(System::Classes::TList* ifd, int tagCode, TIETagType tagType, int dataNum, void * buffer)/* overload */; void __fastcall CopyTag(System::Classes::TList* src_ifd, int srcTagIndex, TIETIFFHandler* source, System::Classes::TList* dst_ifd)/* overload */; void __fastcall init(); public: __fastcall TIETIFFHandler()/* overload */; __fastcall TIETIFFHandler(const System::UnicodeString FileName)/* overload */; __fastcall TIETIFFHandler(System::Classes::TStream* Stream)/* overload */; __fastcall virtual ~TIETIFFHandler(); bool __fastcall ReadFile(const System::UnicodeString FileName); bool __fastcall ReadStream(System::Classes::TStream* Stream); bool __fastcall InsertTIFFStream(System::Classes::TStream* Stream, int pageIndex); bool __fastcall InsertTIFFFile(const System::UnicodeString FileName, int pageIndex); bool __fastcall InsertPageAsFile(const System::UnicodeString FileName, int pageIndex); bool __fastcall InsertPageAsStream(System::Classes::TStream* Stream, int pageIndex); bool __fastcall InsertPageAsImage(System::TObject* viewer, int pageIndex); void __fastcall WriteFile(const System::UnicodeString FileName, int page = 0xffffffff); void __fastcall WriteStream(System::Classes::TStream* Stream, int page = 0xffffffff); void __fastcall FreeData(); int __fastcall GetTagsCount(int pageIndex); int __fastcall GetPagesCount(); int __fastcall GetTagCode(int pageIndex, int tagIndex); TIETagType __fastcall GetTagType(int pageIndex, int tagIndex); int __fastcall GetTagLength(int pageIndex, int tagIndex); int __fastcall GetTagLengthInBytes(int pageIndex, int tagIndex); int __fastcall FindTag(int pageIndex, int tagCode)/* overload */; void __fastcall DeleteTag(int pageIndex, int tagIndex)/* overload */; System::AnsiString __fastcall GetTagDescription(int pageIndex, int tagIndex); void __fastcall ChangeTagCode(int pageIndex, int tagIndex, int newCode); int __fastcall GetInteger(int pageIndex, int tagIndex, int arrayIndex)/* overload */; System::AnsiString __fastcall GetString(int pageIndex, int tagIndex); double __fastcall GetFloat(int pageIndex, int tagIndex, int arrayIndex); System::Variant __fastcall GetValue(int pageIndex, int tagIndex, int arrayIndex); void __fastcall SaveTagToFile(int pageIndex, int tagIndex, const System::UnicodeString fileName); void * __fastcall GetValueRAW(int pageIndex, int tagIndex, int arrayIndex); void __fastcall SetValue(int pageIndex, int tagCode, TIETagType tagType, const System::Variant &value)/* overload */; void __fastcall SetValueRAW(int pageIndex, int tagCode, TIETagType tagType, int dataNum, void * buffer)/* overload */; void __fastcall CopyTag(int srcPageIndex, int srcTagIndex, TIETIFFHandler* source, int dstPageIndex)/* overload */; void __fastcall DeletePage(int pageIndex); void __fastcall ExchangePage(int Index1, int Index2); void __fastcall MovePage(int CurIndex, int NewIndex); int __fastcall InsertPage(int pageIndex = 0xffffffff)/* overload */; int __fastcall InsertPage(int pageIndex, TIETIFFHandler* sourceHandler, int sourcePage)/* overload */; __property bool LittleEndian = {read=GetLittleEndian, nodefault}; __property System::Word Version = {read=fVersion, write=fVersion, nodefault}; }; class PASCALIMPLEMENTATION TIEGraphicBase : public Vcl::Graphics::TGraphic { typedef Vcl::Graphics::TGraphic inherited; private: System::TObject* fio; TIEBitmap* bmp; int fFiletype; Hyiedefs::TResampleFilter fResampleFilter; protected: virtual void __fastcall Draw(Vcl::Graphics::TCanvas* ACanvas, const Winapi::Windows::TRect &Rect); virtual bool __fastcall GetEmpty(); virtual int __fastcall GetHeight(); virtual int __fastcall GetWidth(); virtual void __fastcall SetHeight(int Value); virtual void __fastcall SetWidth(int Value); virtual void __fastcall WriteData(System::Classes::TStream* Stream); virtual void __fastcall ReadData(System::Classes::TStream* Stream); public: __fastcall virtual TIEGraphicBase()/* overload */; __fastcall virtual ~TIEGraphicBase(); virtual void __fastcall LoadFromStream(System::Classes::TStream* Stream); virtual void __fastcall SaveToStream(System::Classes::TStream* Stream); virtual void __fastcall LoadFromClipboardFormat(System::Word AFormat, Winapi::Windows::THandle AData, HPALETTE APalette); virtual void __fastcall SaveToClipboardFormat(System::Word &AFormat, Winapi::Windows::THandle &AData, HPALETTE &APalette); virtual void __fastcall Assign(System::Classes::TPersistent* Source); __property System::TObject* IO = {read=fio}; __property Hyiedefs::TResampleFilter ResampleFilter = {read=fResampleFilter, write=fResampleFilter, nodefault}; __property TIEBitmap* IEBitmap = {read=bmp}; virtual void __fastcall AssignTo(System::Classes::TPersistent* Dest); }; class PASCALIMPLEMENTATION TIEBufferedReadStream : public System::Classes::TStream { typedef System::Classes::TStream inherited; private: typedef System::DynamicArray _TIEBufferedReadStream__1; private: System::Classes::TStream* fStream; int fBufferSize; _TIEBufferedReadStream__1 fMemory; __int64 fPosition; int fPositionBuf; __int64 fSize; __int64 fRelativePosition; bool fOverPosition; void __fastcall AllocBufferSize(int BufferSize); void __fastcall LoadData(); public: __fastcall TIEBufferedReadStream(System::Classes::TStream* InputStream, int BufferSize, bool UseRelativePosition); __fastcall virtual ~TIEBufferedReadStream(); virtual System::LongInt __fastcall Read(void *Buffer, System::LongInt Count)/* overload */; virtual System::LongInt __fastcall Write(const void *Buffer, System::LongInt Count)/* overload */; virtual __int64 __fastcall Seek(const __int64 Offset, System::Classes::TSeekOrigin Origin)/* overload */; __property bool OverPosition = {read=fOverPosition, nodefault}; /* Hoisted overloads: */ public: inline System::NativeInt __fastcall Read(void *Buffer, System::NativeInt Count){ return System::Classes::TStream::Read(Buffer, Count); } inline System::LongInt __fastcall Read(System::Sysutils::TBytes Buffer, System::LongInt Offset, System::LongInt Count){ return System::Classes::TStream::Read(Buffer, Offset, Count); } inline System::NativeInt __fastcall Read(System::Sysutils::TBytes Buffer, System::NativeInt Offset, System::NativeInt Count){ return System::Classes::TStream::Read(Buffer, Offset, Count); } inline System::LongInt __fastcall Read(System::Sysutils::TBytes &Buffer, System::LongInt Count){ return System::Classes::TStream::Read(Buffer, Count); } inline System::NativeInt __fastcall Read(System::Sysutils::TBytes &Buffer, System::NativeInt Count){ return System::Classes::TStream::Read(Buffer, Count); } inline System::NativeInt __fastcall Write(const void *Buffer, System::NativeInt Count){ return System::Classes::TStream::Write(Buffer, Count); } inline System::LongInt __fastcall Write(const System::Sysutils::TBytes Buffer, System::LongInt Offset, System::LongInt Count){ return System::Classes::TStream::Write(Buffer, Offset, Count); } inline System::NativeInt __fastcall Write(const System::Sysutils::TBytes Buffer, System::NativeInt Offset, System::NativeInt Count){ return System::Classes::TStream::Write(Buffer, Offset, Count); } inline System::LongInt __fastcall Write(const System::Sysutils::TBytes Buffer, System::LongInt Count){ return System::Classes::TStream::Write(Buffer, Count); } inline System::NativeInt __fastcall Write(const System::Sysutils::TBytes Buffer, System::NativeInt Count){ return System::Classes::TStream::Write(Buffer, Count); } inline System::LongInt __fastcall Seek(System::LongInt Offset, System::Word Origin){ return System::Classes::TStream::Seek(Offset, Origin); } inline __int64 __fastcall Seek(const __int64 Offset, System::Word Origin){ return System::Classes::TStream::Seek(Offset, Origin); } }; class PASCALIMPLEMENTATION TIEBufferedWriteStream : public System::Classes::TStream { typedef System::Classes::TStream inherited; private: System::Classes::TStream* fStream; System::Sysutils::PByteArray fMemory; int fBufferSize; int fBufferPos; void __fastcall FlushData(); public: __fastcall TIEBufferedWriteStream(System::Classes::TStream* InputStream, int BufferSize); __fastcall virtual ~TIEBufferedWriteStream(); virtual System::LongInt __fastcall Read(void *Buffer, System::LongInt Count)/* overload */; virtual System::LongInt __fastcall Write(const void *Buffer, System::LongInt Count)/* overload */; virtual __int64 __fastcall Seek(const __int64 Offset, System::Classes::TSeekOrigin Origin)/* overload */; /* Hoisted overloads: */ public: inline System::NativeInt __fastcall Read(void *Buffer, System::NativeInt Count){ return System::Classes::TStream::Read(Buffer, Count); } inline System::LongInt __fastcall Read(System::Sysutils::TBytes Buffer, System::LongInt Offset, System::LongInt Count){ return System::Classes::TStream::Read(Buffer, Offset, Count); } inline System::NativeInt __fastcall Read(System::Sysutils::TBytes Buffer, System::NativeInt Offset, System::NativeInt Count){ return System::Classes::TStream::Read(Buffer, Offset, Count); } inline System::LongInt __fastcall Read(System::Sysutils::TBytes &Buffer, System::LongInt Count){ return System::Classes::TStream::Read(Buffer, Count); } inline System::NativeInt __fastcall Read(System::Sysutils::TBytes &Buffer, System::NativeInt Count){ return System::Classes::TStream::Read(Buffer, Count); } inline System::NativeInt __fastcall Write(const void *Buffer, System::NativeInt Count){ return System::Classes::TStream::Write(Buffer, Count); } inline System::LongInt __fastcall Write(const System::Sysutils::TBytes Buffer, System::LongInt Offset, System::LongInt Count){ return System::Classes::TStream::Write(Buffer, Offset, Count); } inline System::NativeInt __fastcall Write(const System::Sysutils::TBytes Buffer, System::NativeInt Offset, System::NativeInt Count){ return System::Classes::TStream::Write(Buffer, Offset, Count); } inline System::LongInt __fastcall Write(const System::Sysutils::TBytes Buffer, System::LongInt Count){ return System::Classes::TStream::Write(Buffer, Count); } inline System::NativeInt __fastcall Write(const System::Sysutils::TBytes Buffer, System::NativeInt Count){ return System::Classes::TStream::Write(Buffer, Count); } inline System::LongInt __fastcall Seek(System::LongInt Offset, System::Word Origin){ return System::Classes::TStream::Seek(Offset, Origin); } inline __int64 __fastcall Seek(const __int64 Offset, System::Word Origin){ return System::Classes::TStream::Seek(Offset, Origin); } }; enum DECLSPEC_DENUM TIESourceType : unsigned char { iestDefault, iestFileIcon, iestFolderIcon, iestCustomImage }; class PASCALIMPLEMENTATION TIEImageInfo : public System::TObject { typedef System::TObject inherited; public: System::TObject* parent; void *image; void *cacheImage; int X; int Y; int row; int col; System::Uitypes::TColor Background; System::WideString Filename; int ID; double DTime; System::WideString TopText; System::WideString BottomText; System::WideString InfoText; Winapi::Windows::TRect internalrect; int tag; void *userPointer; Hyieutils::TIEDictionary* userDict; TIESourceType SourceType; bool Checked; System::TDateTime CreateDate; System::TDateTime EditDate; __int64 FileSize; int FileTypeIndex; System::AnsiString Hash; __fastcall TIEImageInfo(System::TObject* Parent_); __fastcall virtual ~TIEImageInfo(); __classmethod TIEImageInfo* __fastcall CreateFromStream(System::TObject* Parent, System::Classes::TStream* Stream, System::Byte StreamVersion, bool LoadCache, TIEVirtualImageList* Images, TIEVirtualImageList* Caches); void __fastcall SaveToStream(System::Classes::TStream* Stream, bool SaveCache, TIEVirtualImageList* Images, TIEVirtualImageList* Caches); }; typedef void __fastcall (__closure *TIEOnUpdateParams)(System::TObject* Sender, int Operation, int idx, int ExtraParam); enum DECLSPEC_DENUM Iexbitmaps__92 : unsigned char { iessoCompressed, iessoSaveIOParams }; typedef System::Set TIESaveSnapshotOptions; typedef void __fastcall (__closure *TIEImageNotifyEvent)(System::TObject* Sender, int idx); class PASCALIMPLEMENTATION TIECustomMultiBitmap : public System::TObject { typedef System::TObject inherited; private: int fImageCacheSize; bool fImageCacheUseDisk; TIEOnUpdateParams fOnUpdateParams; TIOMultiParams* fParamsList; int fLockUpdate; TIEImageNotifyEvent fOnChanged; bool fModified; int __fastcall GetImageBitCount(int idx); int __fastcall GetImageCount(); System::AnsiString __fastcall GetImageHash(int idx); int __fastcall GetImageHeight(int idx); int __fastcall GetImageOriginalHeight(int idx); int __fastcall GetImageOriginalWidth(int idx); int __fastcall GetImageTag(int idx); void * __fastcall GetImageUserPointer(int idx); int __fastcall GetImageWidth(int idx); void __fastcall SetImageCacheSize(int v); void __fastcall SetImageCacheUseDisk(bool v); void __fastcall SetImageOriginalHeight(int idx, int Value); void __fastcall SetImageOriginalWidth(int idx, int Value); void __fastcall SetImageTag(int idx, int v); void __fastcall SetImageUserPointer(int idx, void * v); System::Uitypes::TColor __fastcall GetImageBackground(int idx); void __fastcall SetImageBackground(int idx, System::Uitypes::TColor v); double __fastcall GetImageDelayTime(int idx); void __fastcall SetImageDelayTime(int idx, double v); TIOParams* __fastcall GetParams(int idx); bool __fastcall GetParamsEnabled(); void __fastcall SetParamsEnabled(const bool Value); void __fastcall UpdateParams(int Operation, int Idx, int ExtraParam); void __fastcall FreeImageInfo(int idx); void __fastcall SetImageEx(int idx, TIEBaseBitmap* srcImage); void __fastcall CheckImageLoaded(int idx); System::WideString __fastcall GetImageFileName(int idx); Hyieutils::TIEDictionary* __fastcall GetImageDictionary(int idx); void __fastcall SetImageFileName(int idx, System::WideString v); void __fastcall SetModified(bool Value); protected: bool fUpdatePending; virtual void __fastcall CheckAllocated(int idx); void __fastcall AllocateVirtual(int Count); bool __fastcall ValidateIndex(int idx); void __fastcall Changed(int idx); public: System::Uitypes::TColor fBackground; TIEVirtualImageList* fImageList; System::Classes::TList* fImageInfo; System::Classes::TComponent* fOwner; __fastcall virtual TIECustomMultiBitmap()/* overload */; __fastcall TIECustomMultiBitmap(bool bCacheToDisk)/* overload */; __fastcall virtual ~TIECustomMultiBitmap(); TIEImageInfo* __fastcall GetImageInfo(int idx); virtual int __fastcall AppendImage()/* overload */; virtual int __fastcall AppendImage(System::Classes::TStream* Stream)/* overload */; virtual int __fastcall AppendImage(TIEBitmap* Bitmap)/* overload */; virtual int __fastcall AppendImage(TIECustomMultiBitmap* MBitmap)/* overload */; virtual int __fastcall AppendImage(Vcl::Graphics::TBitmap* Bitmap)/* overload */; virtual int __fastcall AppendImage(int Width, int Height, Hyieutils::TIEPixelFormat PixelFormat = (Hyieutils::TIEPixelFormat)(0x5))/* overload */; virtual int __fastcall AppendImage(const System::UnicodeString FileName)/* overload */; virtual void __fastcall InsertImage(int Idx)/* overload */; virtual void __fastcall InsertImage(int Idx, System::Classes::TStream* Stream)/* overload */; virtual void __fastcall InsertImage(int Idx, TIEBitmap* Bitmap)/* overload */; virtual void __fastcall InsertImage(int Idx, TIECustomMultiBitmap* MBitmap)/* overload */; virtual void __fastcall InsertImage(int Idx, Vcl::Graphics::TBitmap* Bitmap)/* overload */; virtual void __fastcall InsertImage(int Idx, int Width, int Height, Hyieutils::TIEPixelFormat PixelFormat = (Hyieutils::TIEPixelFormat)(0x5))/* overload */; virtual void __fastcall InsertImage(int Idx, const System::UnicodeString FileName)/* overload */; int __fastcall IndexOf(const System::AnsiString Hash)/* overload */; int __fastcall IndexOf(TIEBitmap* Bitmap)/* overload */; void __fastcall GetImageToFile(int idx, const System::WideString FileName, TIOParams* IOParams = (TIOParams*)(0x0)); void __fastcall GetImageToStream(int idx, System::Classes::TStream* Stream, Hyieutils::TIOFileType ImageFormat, TIOParams* IOParams = (TIOParams*)(0x0)); Vcl::Graphics::TBitmap* __fastcall GetBitmap(int idx); TIEBitmap* __fastcall GetTIEBitmap(int idx); virtual void __fastcall ReleaseBitmap(int idx, bool SaveChanges); void __fastcall CopyToIEBitmap(int idx, TIEBitmap* bmp); virtual void __fastcall DeleteImage(int idx); void __fastcall PrepareSpaceFor(int Width, int Height, int Bitcount, int ImageCount); virtual void __fastcall SetImage(int idx, Vcl::Graphics::TBitmap* srcImage)/* overload */; virtual void __fastcall SetImage(int idx, TIEBaseBitmap* srcImage)/* overload */; virtual void __fastcall SetImage(int idx, int width, int height, Hyieutils::TIEPixelFormat PixelFormat)/* overload */; virtual bool __fastcall SetImage(int idx, const System::WideString FileName, int SourceImageIndex = 0x0, Hyieutils::TIOFileType FileFormat = 0x0)/* overload */; virtual bool __fastcall SetImage(int idx, System::Classes::TStream* Stream, int SourceImageIndex = 0x0, Hyieutils::TIOFileType FileFormat = 0x0)/* overload */; void __fastcall SaveSnapshot(System::Classes::TStream* Stream, TIESaveSnapshotOptions Options = (TIESaveSnapshotOptions() << Iexbitmaps__92::iessoCompressed << Iexbitmaps__92::iessoSaveIOParams ))/* overload */; void __fastcall SaveSnapshot(const System::WideString FileName, TIESaveSnapshotOptions Options = (TIESaveSnapshotOptions() << Iexbitmaps__92::iessoCompressed << Iexbitmaps__92::iessoSaveIOParams ))/* overload */; bool __fastcall LoadSnapshot(System::Classes::TStream* Stream)/* overload */; bool __fastcall LoadSnapshot(const System::WideString FileName)/* overload */; __property bool ImageCacheUseDisk = {read=fImageCacheUseDisk, write=SetImageCacheUseDisk, nodefault}; __property int ImageCacheSize = {read=fImageCacheSize, write=SetImageCacheSize, default=10}; __property int Count = {read=GetImageCount, nodefault}; __property int ImageWidth[int idx] = {read=GetImageWidth}; __property System::AnsiString ImageHash[int idx] = {read=GetImageHash}; __property int ImageHeight[int idx] = {read=GetImageHeight}; __property int ImageOriginalWidth[int idx] = {read=GetImageOriginalWidth, write=SetImageOriginalWidth}; __property int ImageOriginalHeight[int idx] = {read=GetImageOriginalHeight, write=SetImageOriginalHeight}; __property int ImageBitCount[int idx] = {read=GetImageBitCount}; __property int ImageTag[int idx] = {read=GetImageTag, write=SetImageTag}; __property void * ImageUserPointer[int idx] = {read=GetImageUserPointer, write=SetImageUserPointer}; __property System::WideString ImageFilename[int idx] = {read=GetImageFileName, write=SetImageFileName}; __property Hyieutils::TIEDictionary* ImageDictionary[int idx] = {read=GetImageDictionary}; __property bool ParamsEnabled = {read=GetParamsEnabled, write=SetParamsEnabled, nodefault}; __property TIOParams* Params[int idx] = {read=GetParams}; virtual void __fastcall Flip(int idx, Hyiedefs::TFlipDir Dir); virtual void __fastcall Rotate(int idx, double Angle, Hyiedefs::TIEAntialiasMode AntialiasMode = (Hyiedefs::TIEAntialiasMode)(0x1), System::Uitypes::TColor BackgroundColor = (System::Uitypes::TColor)(0xffffff)); virtual void __fastcall Resample(int idx, double ScaleBy, Hyiedefs::TResampleFilter FilterType = (Hyiedefs::TResampleFilter)(0x0)); void __fastcall FlipAll(Hyiedefs::TFlipDir Dir); void __fastcall RotateAll(double Angle, Hyiedefs::TIEAntialiasMode AntialiasMode = (Hyiedefs::TIEAntialiasMode)(0x1), System::Uitypes::TColor BackgroundColor = (System::Uitypes::TColor)(0xffffff)); void __fastcall ResampleAll(double ScaleBy, Hyiedefs::TResampleFilter FilterType = (Hyiedefs::TResampleFilter)(0x0)); __property System::Uitypes::TColor ImageBackground[int idx] = {read=GetImageBackground, write=SetImageBackground}; __property double ImageDelayTime[int idx] = {read=GetImageDelayTime, write=SetImageDelayTime}; __property TIEOnUpdateParams OnUpdateParams = {read=fOnUpdateParams, write=fOnUpdateParams}; __property TIOMultiParams* ParamsList = {read=fParamsList}; void __fastcall Clear(); void __fastcall LockUpdate(); int __fastcall UnlockUpdate(); virtual void __fastcall Update(); virtual void __fastcall UpdateEx(bool bFullUpdate = true); __property int LockUpdateCount = {read=fLockUpdate, nodefault}; virtual bool __fastcall SetImageFromStreamOrFile(int idx, System::Classes::TStream* Stream, const System::WideString FileName, int SourceImageIndex, Hyieutils::TIOFileType FileFormat, System::TObject* MIO = (System::TObject*)(0x0)); virtual void __fastcall SetActiveImage(int idx); virtual bool __fastcall InternalLoadImageByID_Assigned(); virtual void __fastcall InternalLoadImageByID(System::TObject* Sender, int Index, int ID, TIEBitmap* &Bitmap, TIOParams* &IOParams); __property TIEImageNotifyEvent OnChanged = {read=fOnChanged, write=fOnChanged}; __property bool Modified = {read=fModified, write=SetModified, nodefault}; }; class PASCALIMPLEMENTATION TIEMultiBitmap : public TIECustomMultiBitmap { typedef TIECustomMultiBitmap inherited; public: __fastcall TIEMultiBitmap(int ImageWidth, int ImageHeight, int PageCount, Hyieutils::TIEPixelFormat ImagePixelFormat)/* overload */; __fastcall TIEMultiBitmap(TIECustomMultiBitmap* MBitmap)/* overload */; __fastcall TIEMultiBitmap(const System::UnicodeString FileName)/* overload */; void __fastcall Assign(System::TObject* Source); int __fastcall AppendSplit(TIEBitmap* SourceGrid, int cellWidth, int cellHeight, int maxCount = 0x0); void __fastcall MoveImage(int idx, int destination); void __fastcall SwapImages(int idx1, int idx2); void __fastcall InsertTransitionFrames(int Idx, int iFrameCount, Iextransitions::TIETransitionType Effect, int iWidth = 0xffffffff, int iHeight = 0xffffffff, System::Uitypes::TColor BackgroundColor = (System::Uitypes::TColor)(0x0), Hyiedefs::TResampleFilter ResamplingFilter = (Hyiedefs::TResampleFilter)(0x9)); void __fastcall InsertTransitionFramesEx(int Idx, int iFrameCount, Iextransitions::TIETransitionType Effect, const Winapi::Windows::TRect &StartRect, const Winapi::Windows::TRect &EndRect, bool RectMaintainAspectRatio = true, int iWidth = 0xffffffff, int iHeight = 0xffffffff, bool bStretchSmall = false, System::Uitypes::TColor BackgroundColor = (System::Uitypes::TColor)(0x0), Hyiedefs::TResampleFilter ResamplingFilter = (Hyiedefs::TResampleFilter)(0x9), int Smoothing = 0x60, Iextransitions::TIETransitionTiming Timing = (Iextransitions::TIETransitionTiming)(0x0)); int __fastcall RemoveBlankPages(double Tolerance = 0.000000E+00, bool Complete = true, bool LeftToRight = true); int __fastcall RemoveDuplicates(); void __fastcall SetImageRect(int idx, Vcl::Graphics::TBitmap* srcImage, int x1, int y1, int x2, int y2)/* overload */; void __fastcall SetImageRect(int idx, TIEBitmap* srcImage, int x1, int y1, int x2, int y2)/* overload */; bool __fastcall Read(const System::UnicodeString FileName, TIOMultiParams* IOParams = (TIOMultiParams*)(0x0), bool bCheckUnknown = false)/* overload */; bool __fastcall Read(System::Classes::TStream* Stream, Hyieutils::TIOFileType FileType = 0x0, TIOMultiParams* IOParams = (TIOMultiParams*)(0x0))/* overload */; bool __fastcall Read(void * Buffer, int BufferSize, Hyieutils::TIOFileType FileType = 0x0, TIOMultiParams* IOParams = (TIOMultiParams*)(0x0))/* overload */; bool __fastcall Write(const System::UnicodeString FileName, TIOMultiParams* IOParams = (TIOMultiParams*)(0x0))/* overload */; bool __fastcall Write(System::Classes::TStream* Stream, Hyieutils::TIOFileType FileType, TIOMultiParams* IOParams = (TIOMultiParams*)(0x0))/* overload */; void __fastcall DuplicateCompressionInfo(); void __fastcall FillFromDirectory(const System::WideString Directory, int Limit = 0xffffffff, bool AllowUnknownFormats = false, const System::WideString ExcludeExtensions = System::WideString(), bool DetectFileFormat = false, const System::WideString FilterMask = System::WideString(), bool bGetHiddenFiles = false); public: /* TIECustomMultiBitmap.Create */ inline __fastcall virtual TIEMultiBitmap()/* overload */ : TIECustomMultiBitmap() { } /* TIECustomMultiBitmap.Create */ inline __fastcall TIEMultiBitmap(bool bCacheToDisk)/* overload */ : TIECustomMultiBitmap(bCacheToDisk) { } /* TIECustomMultiBitmap.Destroy */ inline __fastcall virtual ~TIEMultiBitmap() { } }; class PASCALIMPLEMENTATION TIETIFFImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIETIFFImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIETIFFImage() { } }; class PASCALIMPLEMENTATION TIEGIFImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEGIFImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEGIFImage() { } }; class PASCALIMPLEMENTATION TIEJpegImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEJpegImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEJpegImage() { } }; class PASCALIMPLEMENTATION TIEPCXImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEPCXImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEPCXImage() { } }; class PASCALIMPLEMENTATION TIEBMPImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEBMPImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEBMPImage() { } }; class PASCALIMPLEMENTATION TIEICOImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEICOImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEICOImage() { } }; class PASCALIMPLEMENTATION TIEPNGImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEPNGImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEPNGImage() { } }; class PASCALIMPLEMENTATION TIETGAImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIETGAImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIETGAImage() { } }; class PASCALIMPLEMENTATION TIEPXMImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEPXMImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEPXMImage() { } }; class PASCALIMPLEMENTATION TIEJP2Image : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEJP2Image()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEJP2Image() { } }; class PASCALIMPLEMENTATION TIEJ2KImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEJ2KImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEJ2KImage() { } }; class PASCALIMPLEMENTATION TIEPSDImage : public TIEGraphicBase { typedef TIEGraphicBase inherited; public: /* TIEGraphicBase.Create */ inline __fastcall virtual TIEPSDImage()/* overload */ : TIEGraphicBase() { } /* TIEGraphicBase.Destroy */ inline __fastcall virtual ~TIEPSDImage() { } }; class PASCALIMPLEMENTATION TIEPDFObject : public System::TObject { typedef System::TObject inherited; public: int Index; int Position; bool DontFree; __fastcall TIEPDFObject(); __fastcall virtual ~TIEPDFObject(); virtual void __fastcall Write(System::Classes::TStream* Stream) = 0 ; }; class PASCALIMPLEMENTATION TIEPDFRefObject : public TIEPDFObject { typedef TIEPDFObject inherited; public: int ObjectNumber; int GenerationNumber; __fastcall TIEPDFRefObject(int ObjNumber, int GenNumber); virtual void __fastcall Write(System::Classes::TStream* Stream); public: /* TIEPDFObject.Destroy */ inline __fastcall virtual ~TIEPDFRefObject() { } }; class PASCALIMPLEMENTATION TIEPDFBooleanObject : public TIEPDFObject { typedef TIEPDFObject inherited; public: bool Value; __fastcall TIEPDFBooleanObject(bool vv); virtual void __fastcall Write(System::Classes::TStream* Stream); public: /* TIEPDFObject.Destroy */ inline __fastcall virtual ~TIEPDFBooleanObject() { } }; class PASCALIMPLEMENTATION TIEPDFNumericObject : public TIEPDFObject { typedef TIEPDFObject inherited; public: double Value; __fastcall TIEPDFNumericObject(double vv); virtual void __fastcall Write(System::Classes::TStream* Stream); public: /* TIEPDFObject.Destroy */ inline __fastcall virtual ~TIEPDFNumericObject() { } }; class PASCALIMPLEMENTATION TIEPDFStringObject : public TIEPDFObject { typedef TIEPDFObject inherited; public: System::AnsiString Value; __fastcall TIEPDFStringObject(System::AnsiString vv); virtual void __fastcall Write(System::Classes::TStream* Stream); public: /* TIEPDFObject.Destroy */ inline __fastcall virtual ~TIEPDFStringObject() { } }; class PASCALIMPLEMENTATION TIEPDFNameObject : public TIEPDFObject { typedef TIEPDFObject inherited; public: System::AnsiString Value; __fastcall TIEPDFNameObject(System::AnsiString vv); virtual void __fastcall Write(System::Classes::TStream* Stream); public: /* TIEPDFObject.Destroy */ inline __fastcall virtual ~TIEPDFNameObject() { } }; class PASCALIMPLEMENTATION TIEPDFArrayObject : public TIEPDFObject { typedef TIEPDFObject inherited; public: System::Classes::TList* Items; __fastcall TIEPDFArrayObject(); __fastcall virtual ~TIEPDFArrayObject(); virtual void __fastcall Write(System::Classes::TStream* Stream); }; class PASCALIMPLEMENTATION TIEPDFDictionaryObject : public TIEPDFObject { typedef TIEPDFObject inherited; public: System::Classes::TStringList* items; __fastcall TIEPDFDictionaryObject(); __fastcall virtual ~TIEPDFDictionaryObject(); virtual void __fastcall Write(System::Classes::TStream* Stream); }; class PASCALIMPLEMENTATION TIEPDFStreamObject : public TIEPDFObject { typedef TIEPDFObject inherited; public: void *data; int length; TIEPDFDictionaryObject* dict; Hyieutils::TIETemporaryFileStream* cache; __fastcall TIEPDFStreamObject(); __fastcall TIEPDFStreamObject(void * copydata, int copylength); __fastcall virtual ~TIEPDFStreamObject(); virtual void __fastcall Write(System::Classes::TStream* Stream); void __fastcall FlushToCache(); }; class PASCALIMPLEMENTATION EIERFBError : public System::Sysutils::Exception { typedef System::Sysutils::Exception inherited; public: /* Exception.Create */ inline __fastcall EIERFBError(const System::UnicodeString Msg) : System::Sysutils::Exception(Msg) { } /* Exception.CreateFmt */ inline __fastcall EIERFBError(const System::UnicodeString Msg, const System::TVarRec *Args, const System::NativeInt Args_High) : System::Sysutils::Exception(Msg, Args, Args_High) { } /* Exception.CreateRes */ inline __fastcall EIERFBError(System::NativeUInt Ident)/* overload */ : System::Sysutils::Exception(Ident) { } /* Exception.CreateRes */ inline __fastcall EIERFBError(System::PResStringRec ResStringRec)/* overload */ : System::Sysutils::Exception(ResStringRec) { } /* Exception.CreateResFmt */ inline __fastcall EIERFBError(System::NativeUInt Ident, const System::TVarRec *Args, const System::NativeInt Args_High)/* overload */ : System::Sysutils::Exception(Ident, Args, Args_High) { } /* Exception.CreateResFmt */ inline __fastcall EIERFBError(System::PResStringRec ResStringRec, const System::TVarRec *Args, const System::NativeInt Args_High)/* overload */ : System::Sysutils::Exception(ResStringRec, Args, Args_High) { } /* Exception.CreateHelp */ inline __fastcall EIERFBError(const System::UnicodeString Msg, int AHelpContext) : System::Sysutils::Exception(Msg, AHelpContext) { } /* Exception.CreateFmtHelp */ inline __fastcall EIERFBError(const System::UnicodeString Msg, const System::TVarRec *Args, const System::NativeInt Args_High, int AHelpContext) : System::Sysutils::Exception(Msg, Args, Args_High, AHelpContext) { } /* Exception.CreateResHelp */ inline __fastcall EIERFBError(System::NativeUInt Ident, int AHelpContext)/* overload */ : System::Sysutils::Exception(Ident, AHelpContext) { } /* Exception.CreateResHelp */ inline __fastcall EIERFBError(System::PResStringRec ResStringRec, int AHelpContext)/* overload */ : System::Sysutils::Exception(ResStringRec, AHelpContext) { } /* Exception.CreateResFmtHelp */ inline __fastcall EIERFBError(System::PResStringRec ResStringRec, const System::TVarRec *Args, const System::NativeInt Args_High, int AHelpContext)/* overload */ : System::Sysutils::Exception(ResStringRec, Args, Args_High, AHelpContext) { } /* Exception.CreateResFmtHelp */ inline __fastcall EIERFBError(System::NativeUInt Ident, const System::TVarRec *Args, const System::NativeInt Args_High, int AHelpContext)/* overload */ : System::Sysutils::Exception(Ident, Args, Args_High, AHelpContext) { } /* Exception.Destroy */ inline __fastcall virtual ~EIERFBError() { } }; typedef void __fastcall (__closure *TIERFBClipboardTextEvent)(System::TObject* Sender, System::AnsiString Text); typedef void __fastcall (__closure *TIERFBUpdateRectEvent)(System::TObject* Sender, const Winapi::Windows::TRect &Rect); class PASCALIMPLEMENTATION TIERFBMessageThread : public System::Classes::TThread { typedef System::Classes::TThread inherited; private: TIERFBClient* m_client; System::AnsiString m_clipboardText; Winapi::Windows::TRect m_updatedRect; void __fastcall CopyRawRow(Winapi::Windows::PByte &src, Winapi::Windows::PByte dst, int columns); void __fastcall msg_FrameBufferUpdate(); void __fastcall msg_SetColourMapEntries(); void __fastcall msg_Bell(); void __fastcall msg_ServerCutText(); void __fastcall DoOnUpdate(); void __fastcall DoOnUpdateNonSync(); void __fastcall DoOnUpdateRect(); void __fastcall DoOnBell(); void __fastcall DoOnClipboardText(); void __fastcall DoOnUpdateScreenSize(); void __fastcall UpdateCursorShape(); public: __fastcall TIERFBMessageThread(TIERFBClient* Client); __fastcall virtual ~TIERFBMessageThread(); virtual void __fastcall Execute(); }; enum DECLSPEC_DENUM TIERFBPixelFormat : unsigned char { ierfbPalette256, ierfbRGB16, ierfbRGB32 }; class PASCALIMPLEMENTATION TIERFBClient : public System::TObject { typedef System::TObject inherited; private: typedef System::DynamicArray _TIERFBClient__1; private: Hyieutils::TIEClientSocket* m_socket; System::Types::TSize m_frameBufferSize; System::Byte m_bitsPerPixel; System::Byte m_depth; System::Byte m_bigEndianFlag; System::Byte m_trueColorFlag; System::Word m_redMax; System::Word m_greenMax; System::Word m_blueMax; System::Byte m_redShift; System::Byte m_greenShift; System::Byte m_blueShift; System::AnsiString m_name; TIEBitmap* m_frameBuffer; bool m_freeFrameBuffer; TIERFBUpdateRectEvent m_OnUpdateRect; System::Classes::TNotifyEvent m_OnUpdate; System::Classes::TNotifyEvent m_OnUpdateNonSync; System::Classes::TNotifyEvent m_OnBell; TIERFBClipboardTextEvent m_OnClipboardText; System::Classes::TNotifyEvent m_OnCursorShapeUpdated; System::Classes::TNotifyEvent m_OnUpdateScreenSize; TIERFBMessageThread* m_msgThread; _TIERFBClient__1 m_colorMap; TIERFBPixelFormat m_pixelFormat; TIEBitmap* m_cursor; Winapi::Windows::TPoint m_cursorPos; Winapi::Windows::TPoint m_cursorHotSpot; TIEBitmap* m_savedCursorArea; Winapi::Windows::TPoint m_savedCursorPos; System::Syncobjs::TCriticalSection* m_frameBufferLock; System::Syncobjs::TCriticalSection* m_socketSendLock; bool m_suspended; void __fastcall SendSetPixelFormat(TIERFBPixelFormat pixelFormat); bool __fastcall GetConnected(); void __fastcall PaintCursor(); void __fastcall RemoveCursor(); void __fastcall SetSuspended(bool value); public: __fastcall TIERFBClient(TIEBitmap* FrameBuffer); __fastcall virtual ~TIERFBClient(); void __fastcall Connect(const System::UnicodeString Address, System::Word Port = (System::Word)(0x170c), const System::AnsiString Password = System::AnsiString()); void __fastcall Disconnect(); __property bool Connected = {read=GetConnected, nodefault}; __property bool Suspended = {read=m_suspended, write=SetSuspended, nodefault}; __property System::Types::TSize ScreenSize = {read=m_frameBufferSize}; __property System::AnsiString ScreenName = {read=m_name}; __property TIERFBPixelFormat ScreenPixelFormat = {read=m_pixelFormat, write=m_pixelFormat, default=2}; void __fastcall SendRequestUpdate(System::Word x, System::Word y, System::Word width, System::Word height, bool incremental)/* overload */; void __fastcall SendRequestUpdate(bool incremental = true)/* overload */; void __fastcall SendPointerEvent(int x, int y, bool LeftButton, bool MiddleButton, bool RightButton); void __fastcall SendKeyEvent(unsigned xkey, bool down)/* overload */; void __fastcall SendKeyEvent(unsigned VirtualKey, unsigned KeyData, bool down)/* overload */; void __fastcall SendClipboard(const System::AnsiString Text); void __fastcall LockFrameBuffer(); void __fastcall UnlockFrameBuffer(); __property TIEBitmap* FrameBuffer = {read=m_frameBuffer}; __property TIEBitmap* Cursor = {read=m_cursor}; __property TIERFBUpdateRectEvent OnUpdateRect = {read=m_OnUpdateRect, write=m_OnUpdateRect}; __property System::Classes::TNotifyEvent OnUpdate = {read=m_OnUpdate, write=m_OnUpdate}; __property System::Classes::TNotifyEvent OnUpdateNonSync = {read=m_OnUpdateNonSync, write=m_OnUpdateNonSync}; __property System::Classes::TNotifyEvent OnBell = {read=m_OnBell, write=m_OnBell}; __property TIERFBClipboardTextEvent OnClipboardText = {read=m_OnClipboardText, write=m_OnClipboardText}; __property System::Classes::TNotifyEvent OnCursorShapeUpdated = {read=m_OnCursorShapeUpdated, write=m_OnCursorShapeUpdated}; __property System::Classes::TNotifyEvent OnUpdateScreenSize = {read=m_OnUpdateScreenSize, write=m_OnUpdateScreenSize}; }; enum DECLSPEC_DENUM TIE3DESMode : unsigned char { ie3desENCRYPT, ie3desDECRYPT }; class PASCALIMPLEMENTATION TIE3DES : public System::TObject { typedef System::TObject inherited; private: System::StaticArray KnL; void __fastcall scrunch(Winapi::Windows::PByte outof, unsigned* into); void __fastcall unscrun(unsigned* outof, Winapi::Windows::PByte into); void __fastcall desfunc(Hyiedefs::PDWordArray block, unsigned* keys); void __fastcall cookey(unsigned* raw1); void __fastcall usekey(unsigned* from); void __fastcall deskey(System::Sysutils::PByteArray key, TIE3DESMode edf); void __fastcall des(Winapi::Windows::PByte inblock, Winapi::Windows::PByte outblock); public: __fastcall TIE3DES()/* overload */; __fastcall TIE3DES(const System::AnsiString Password, TIE3DESMode Mode)/* overload */; __fastcall virtual ~TIE3DES(); void __fastcall Reset(const System::AnsiString Password, TIE3DESMode Mode)/* overload */; void __fastcall Reset(__int64 Password, TIE3DESMode Mode)/* overload */; void __fastcall Transform(Winapi::Windows::PByte InBlock, Winapi::Windows::PByte OutBlock, int Length); }; class PASCALIMPLEMENTATION TIEImageListItem : public System::TObject { typedef System::TObject inherited; public: TIEBitmap* image; System::WideString filename; __fastcall TIEImageListItem(TIEBitmap* image_, System::WideString filename_); public: /* TObject.Destroy */ inline __fastcall virtual ~TIEImageListItem() { } }; class PASCALIMPLEMENTATION TIEImageList : public System::TObject { typedef System::TObject inherited; public: TIEBitmap* operator[](int idx) { return this->Image[idx]; } private: System::Classes::TList* m_images; int __fastcall GetImageCount(); TIEBitmap* __fastcall GetImage(int idx); void __fastcall SetImage(int idx, TIEBitmap* value); System::WideString __fastcall GetFilename(int idx); void __fastcall SetFilename(int idx, System::WideString value); public: __fastcall TIEImageList(); __fastcall virtual ~TIEImageList(); void __fastcall Clear(); void __fastcall FillFromDirectory(const System::WideString Directory, int Limit = 0xffffffff, bool AllowUnknownFormats = false, const System::WideString ExcludeExtensions = System::WideString(), bool DetectFileFormat = false, const System::WideString FilterMask = System::WideString(), bool IncludeVideoFiles = false); int __fastcall AppendImageRef(TIEBitmap* image, System::WideString filename); void __fastcall Remove(int imageIndex); __property int ImageCount = {read=GetImageCount, nodefault}; __property TIEBitmap* Image[int idx] = {read=GetImage, write=SetImage/*, default*/}; __property System::WideString Filename[int idx] = {read=GetFilename, write=SetFilename}; }; enum DECLSPEC_DENUM TIEEquirectangularRendererQuality : unsigned char { ierqLow, ierqHigh }; class PASCALIMPLEMENTATION TIEEquirectangularRenderer : public TIEVirtualBitmapProvider { typedef TIEVirtualBitmapProvider inherited; private: TIEBitmap* m_segmentBuffer; TIEBitmap* m_source; bool m_ownSource; System::StaticArray m_arccos_tab; double m_cam_heading; double m_cam_pitch; double m_cam_fov; TIEEquirectangularRendererQuality m_quality; void __fastcall Init(TIEBitmap* Source, System::TObject* IOParams, bool OwnSource); void __fastcall RenderLowQuality(TIEBitmap* Container, TIEBitmap* DestBitmap, int DestWidth, int DestHeight, int DestX1, int DestY1, int DestX2, int DestY2, System::PInteger SrcCols, System::PInteger SrcRows, int Transparency, Hyieutils::TIERenderOperation RenderOperation, double Opacity); void __fastcall RenderHighQuality(TIEBitmap* Container, TIEBitmap* DestBitmap, int DestWidth, int DestHeight, int DestX1, int DestY1, int DestX2, int DestY2, System::PInteger SrcCols, System::PInteger SrcRows, int Transparency, Hyieutils::TIERenderOperation RenderOperation, double Opacity); public: __fastcall TIEEquirectangularRenderer(TIEBitmap* Source, System::TObject* IOParams, bool OwnSource)/* overload */; __fastcall TIEEquirectangularRenderer(System::TObject* SourceView)/* overload */; __fastcall virtual ~TIEEquirectangularRenderer(); virtual void __fastcall Render(TIEBitmap* Container, TIEBitmap* DestBitmap, int DestWidth, int DestHeight, int DestX1, int DestY1, int DestX2, int DestY2, System::PInteger SrcCols, System::PInteger SrcRows, int Transparency, Hyieutils::TIERenderOperation RenderOperation, double Opacity); virtual void * __fastcall GetSegment(TIEBitmap* Container, int Row, int Col, int Width); __property TIEEquirectangularRendererQuality Quality = {read=m_quality, write=m_quality, nodefault}; __property double CamHeading = {read=m_cam_heading, write=m_cam_heading}; __property double CamPitch = {read=m_cam_pitch, write=m_cam_pitch}; __property double CamFov = {read=m_cam_fov, write=m_cam_fov}; }; __interface INTERFACE_UUID("{A7CC5606-1E6C-4A7D-972C-6464A392A278}") IIELoadPicture : public System::IInterface { virtual void __fastcall LoadPicture() = 0 ; }; enum DECLSPEC_DENUM TIESlippyMapProvider : unsigned char { iesmpOSM_Mapnik, iesmpOpenCycleMap, iesmpOpenCycleMapTransport, iesmpCloudMadeWebStyle, iesmpCloudMadeFineLineStyle, iesmpCloudMadeNoNamesStyle, iesmpMapQuest, iesmpMapQuestOpenAerial, iesmpMigurskisTerrain }; class PASCALIMPLEMENTATION TIESlippyMapQueueItem : public System::TObject { typedef System::TObject inherited; private: enum DECLSPEC_DENUM _TIESlippyMapQueueItem__1 : unsigned char { iesmqWAIT, iesmqLOAD, iesmqSAVE, iesmqEND }; public: Winapi::Windows::TPoint tile; int zoom; TIEBitmap* bmp; TIEBitmap* destBitmap; Winapi::Windows::TPoint destPos; System::TObject* io; _TIESlippyMapQueueItem__1 state; __fastcall TIESlippyMapQueueItem(const Winapi::Windows::TPoint &tile_, int zoom_, TIEBitmap* destBitmap_, const Winapi::Windows::TPoint &destPos_); __fastcall virtual ~TIESlippyMapQueueItem(); }; class PASCALIMPLEMENTATION TIESlippyMap : public TIEVirtualBitmapProvider { typedef TIEVirtualBitmapProvider inherited; private: System::UnicodeString m_providerURL; int m_providerURLIndex; System::Classes::TList* m_loadQueue; int m_maxThreads; System::UnicodeString m_cachePath; TIEBitmap* m_segmentBuffer; double m_latitude; double m_longitude; Winapi::Windows::TPoint m_pointPosition; int m_zoom; int m_memoryCacheSize; System::Classes::TList* m_memoryCache; System::UnicodeString m_userKey; System::Uitypes::TColor m_missingTileColor; System::Classes::TNotifyEvent m_OnBeginWork; System::Classes::TNotifyEvent m_OnFinishWork; void __fastcall init(const System::UnicodeString providerURL, const System::UnicodeString cachePath); void __fastcall SetLatitude(double value); void __fastcall SetLongitude(double value); protected: __classmethod int __fastcall LongitudeToTileX(double longitude, int zoom); __classmethod int __fastcall LatitudeToTileY(double latitude, int zoom); __classmethod double __fastcall TileXToLongitude(int tileX, int zoom); __classmethod double __fastcall TileYToLatitude(int tileY, int zoom); __classmethod double __fastcall CoordXToLongitude(int coordX, int tileX, int zoom); __classmethod double __fastcall CoordYToLatitude(int coordY, int tileY, int zoom); __classmethod int __fastcall LongitudeToCoordX(double longitude, int zoom); __classmethod int __fastcall LatitudeToCoordY(double latitude, int zoom); System::UnicodeString __fastcall GetProviderURL(); int __fastcall GetProviderURLCount(); System::UnicodeString __fastcall GetFileURL(int tileX, int tileY); System::UnicodeString __fastcall GetCachedFileName(int tileX, int tileY); bool __fastcall ProcessQueue(); void __fastcall AddTileToLoadQueue(const Winapi::Windows::TPoint &tile, TIEBitmap* destBitmap, const Winapi::Windows::TPoint &destPos); void __fastcall WaitLoadQueue(); void __fastcall ClearLoadQueue(); void __fastcall ClearMemoryCache(); void __fastcall AddItemToMemoryCache(TIESlippyMapQueueItem* item); void __fastcall CalcTopLeftTileAndPos(Winapi::Windows::TPoint &startTile, Winapi::Windows::TPoint &startPos); int __fastcall WrapHorizTile(int tileX); public: __fastcall TIESlippyMap(const System::UnicodeString providerURL, const System::UnicodeString cachePath)/* overload */; __fastcall TIESlippyMap(TIESlippyMapProvider provider, const System::UnicodeString cachePath)/* overload */; __fastcall virtual ~TIESlippyMap(); void __fastcall DrawTo(TIEBitmap* destBitmap); virtual void __fastcall Render(TIEBitmap* Container, TIEBitmap* DestBitmap, int DestWidth, int DestHeight, int DestX1, int DestY1, int DestX2, int DestY2, System::PInteger SrcCols, System::PInteger SrcRows, int Transparency, Hyieutils::TIERenderOperation RenderOperation, double Opacity); virtual void * __fastcall GetSegment(TIEBitmap* Container, int Row, int Col, int Width); __property int MaxThreads = {read=m_maxThreads, write=m_maxThreads, nodefault}; __property System::UnicodeString CachePath = {read=m_cachePath, write=m_cachePath}; __property int MemoryCacheSize = {read=m_memoryCacheSize, write=m_memoryCacheSize, nodefault}; __property double Latitude = {read=m_latitude, write=SetLatitude}; __property double Longitude = {read=m_longitude, write=SetLongitude}; __property int Zoom = {read=m_zoom, write=m_zoom, nodefault}; __property Winapi::Windows::TPoint PointPosition = {read=m_pointPosition, write=m_pointPosition}; __property System::UnicodeString UserKey = {read=m_userKey, write=m_userKey}; __property System::Uitypes::TColor MissingTileColor = {read=m_missingTileColor, write=m_missingTileColor, nodefault}; double __fastcall BmpXToLongitude(int X); double __fastcall BmpYToLatitude(int Y); int __fastcall LongitudeToBmpX(double lon); int __fastcall LatitudeToBmpY(double lat); __property System::Classes::TNotifyEvent OnBeginWork = {read=m_OnBeginWork, write=m_OnBeginWork}; __property System::Classes::TNotifyEvent OnFinishWork = {read=m_OnFinishWork, write=m_OnFinishWork}; }; enum DECLSPEC_DENUM TIEFindFormatMethod : unsigned char { ffContentOnly, ffVerifyByExtension, ffFallbackToExtension }; class PASCALIMPLEMENTATION TIEVCLStreamProvider : public System::TInterfacedObject { typedef System::TInterfacedObject inherited; private: System::Classes::TStream* m_stream; public: __fastcall TIEVCLStreamProvider(System::Classes::TStream* Stream); __fastcall virtual ~TIEVCLStreamProvider(); HRESULT __safecall size(__int64 &__size_result); HRESULT __safecall seek(__int64 offset, Ievision::TIEVisionSeekOffset whence); HRESULT __safecall tell(__int64 &__tell_result); HRESULT __safecall silent_read(void * ptr, __int64 size, __int64 &__silent_read_result); HRESULT __safecall silent_write(void * ptr, __int64 size, __int64 &__silent_write_result); HRESULT __safecall silent_getc(Ievision::int32_t &__silent_getc_result); HRESULT __safecall eof(Ievision::bool32 &__eof_result); private: void *__TIEVisionCustomStreamProvider; // Ievision::TIEVisionCustomStreamProvider public: operator Ievision::TIEVisionCustomStreamProvider*(void) { return (Ievision::TIEVisionCustomStreamProvider*)&__TIEVisionCustomStreamProvider; } }; enum DECLSPEC_DENUM TIEJpegTransform : unsigned char { jtNone, jtCut, jtHorizFlip, jtVertFlip, jtTranspose, jtTransverse, jtRotate90, jtRotate180, jtRotate270 }; enum DECLSPEC_DENUM TIEJpegCopyMarkers : unsigned char { jcCopyNone, jcCopyComments, jcCopyAll }; typedef void __fastcall (*TIEReadImageStream)(System::Classes::TStream* Stream, TIEBitmap* Bitmap, TIOParams* &IOParams, Hyiedefs::TProgressRec &Progress, bool Preview); typedef void __fastcall (*TIEWriteImageStream)(System::Classes::TStream* Stream, TIEBitmap* Bitmap, TIOParams* &IOParams, Hyiedefs::TProgressRec &Progress); typedef bool __fastcall (*TIETryImageStream)(System::Classes::TStream* Stream, Hyieutils::TIOFileType TryingFormat); class PASCALIMPLEMENTATION TIEFileFormatInfo : public System::TObject { typedef System::TObject inherited; public: Hyieutils::TIOFileType FileType; System::UnicodeString FullName; System::UnicodeString Extensions; System::UnicodeString SuitableExtension; bool InternalFormat; Hyieutils::TPreviewParams DialogPage; TIEReadImageStream ReadFunction; TIEWriteImageStream WriteFunction; TIETryImageStream TryFunction; __fastcall TIEFileFormatInfo()/* overload */; __fastcall TIEFileFormatInfo(Hyieutils::TIOFileType FileType, System::UnicodeString FullName, System::UnicodeString Extensions, System::UnicodeString SuitableExtension, bool InternalFormat, Hyieutils::TPreviewParams DialogPage, TIEReadImageStream ReadFunction, TIEWriteImageStream WriteFunction, TIETryImageStream TryFunction)/* overload */; public: /* TObject.Destroy */ inline __fastcall virtual ~TIEFileFormatInfo() { } }; typedef void __fastcall (*TIEConvertColorFunction)(void * InputScanline, Hyiedefs::TIEColorSpace InputColorSpace, void * OutputScanline, Hyiedefs::TIEColorSpace OutputColorSpace, int ImageWidth, TIOParams* IOParams); //-- var, const, procedure --------------------------------------------------- static _DELPHI_CONST System::Int8 IEMAXICOIMAGES = System::Int8(0x10); static _DELPHI_CONST System::Byte JPEG_APP0 = System::Byte(0xe0); static _DELPHI_CONST System::Byte JPEG_APP1 = System::Byte(0xe1); static _DELPHI_CONST System::Byte JPEG_APP2 = System::Byte(0xe2); static _DELPHI_CONST System::Byte JPEG_APP3 = System::Byte(0xe3); static _DELPHI_CONST System::Byte JPEG_APP4 = System::Byte(0xe4); static _DELPHI_CONST System::Byte JPEG_APP5 = System::Byte(0xe5); static _DELPHI_CONST System::Byte JPEG_APP6 = System::Byte(0xe6); static _DELPHI_CONST System::Byte JPEG_APP7 = System::Byte(0xe7); static _DELPHI_CONST System::Byte JPEG_APP8 = System::Byte(0xe8); static _DELPHI_CONST System::Byte JPEG_APP9 = System::Byte(0xe9); static _DELPHI_CONST System::Byte JPEG_APP10 = System::Byte(0xea); static _DELPHI_CONST System::Byte JPEG_APP11 = System::Byte(0xeb); static _DELPHI_CONST System::Byte JPEG_APP12 = System::Byte(0xec); static _DELPHI_CONST System::Byte JPEG_APP13 = System::Byte(0xed); static _DELPHI_CONST System::Byte JPEG_APP14 = System::Byte(0xee); static _DELPHI_CONST System::Byte JPEG_APP15 = System::Byte(0xef); static _DELPHI_CONST System::Byte JPEG_COM = System::Byte(0xfe); static _DELPHI_CONST System::Int8 PhotoShop_IPTC_Records = System::Int8(0x2); static _DELPHI_CONST System::Int8 IPTC_PS_Title = System::Int8(0x5); static _DELPHI_CONST System::Int8 IPTC_PS_Caption = System::Int8(0x78); static _DELPHI_CONST System::Int8 IPTC_PS_Keywords = System::Int8(0x19); static _DELPHI_CONST System::Int8 IPTC_PS_Category = System::Int8(0xf); static _DELPHI_CONST System::Int8 IPTC_PS_Category_2 = System::Int8(0x14); static _DELPHI_CONST System::Int8 IPTC_PS_City = System::Int8(0x5a); static _DELPHI_CONST System::Int8 IPTC_PS_State_Province = System::Int8(0x5f); static _DELPHI_CONST System::Int8 IPTC_PS_Country = System::Int8(0x65); static _DELPHI_CONST System::Int8 IPTC_PS_Instructions = System::Int8(0x28); static _DELPHI_CONST System::Int8 IPTC_PS_Date_Created = System::Int8(0x37); static _DELPHI_CONST System::Int8 IPTC_PS_Time_Created = System::Int8(0x3c); static _DELPHI_CONST System::Int8 IPTC_PS_Byline_1 = System::Int8(0x50); static _DELPHI_CONST System::Int8 IPTC_PS_Byline_2 = System::Int8(0x55); static _DELPHI_CONST System::Int8 IPTC_PS_Country_Code = System::Int8(0x64); static _DELPHI_CONST System::Int8 IPTC_PS_Transmission_Reference = System::Int8(0x67); static _DELPHI_CONST System::Int8 IPTC_PS_Credit = System::Int8(0x6e); static _DELPHI_CONST System::Int8 IPTC_PS_Source = System::Int8(0x73); static _DELPHI_CONST System::Int8 IPTC_PS_Writer = System::Int8(0x7a); static _DELPHI_CONST System::Int8 IPTC_PS_Edit_Status = System::Int8(0x7); static _DELPHI_CONST System::Int8 IPTC_PS_Urgency = System::Int8(0xa); static _DELPHI_CONST System::Int8 IPTC_PS_Fixture_Identifier = System::Int8(0x16); static _DELPHI_CONST System::Int8 IPTC_PS_Release_Date = System::Int8(0x1e); static _DELPHI_CONST System::Int8 IPTC_PS_Release_Time = System::Int8(0x23); static _DELPHI_CONST System::Int8 IPTC_PS_Reference_Service = System::Int8(0x2d); static _DELPHI_CONST System::Int8 IPTC_PS_Reference_Date = System::Int8(0x2f); static _DELPHI_CONST System::Int8 IPTC_PS_Reference_Number = System::Int8(0x32); static _DELPHI_CONST System::Int8 IPTC_PS_Originating_Program = System::Int8(0x41); static _DELPHI_CONST System::Int8 IPTC_PS_Program_Version = System::Int8(0x46); static _DELPHI_CONST System::Int8 IPTC_PS_Object_Cycle = System::Int8(0x4b); static _DELPHI_CONST System::Int8 IPTC_PS_Copyright_Notice = System::Int8(0x74); static _DELPHI_CONST System::Byte IPTC_PS_Image_Type = System::Byte(0x82); static _DELPHI_CONST System::Int8 _exoCorrectOrientation = System::Int8(0x1); static _DELPHI_CONST System::Int8 _exoNeedsHorizontalFlip = System::Int8(0x2); static _DELPHI_CONST System::Int8 _exoNeeds180Rotate = System::Int8(0x3); static _DELPHI_CONST System::Int8 _exoNeedsVerticalFlip = System::Int8(0x4); static _DELPHI_CONST System::Int8 _exoNeedsHorzAndVertFlip = System::Int8(0x5); static _DELPHI_CONST System::Int8 _exoNeeds90RotateCW = System::Int8(0x6); static _DELPHI_CONST System::Int8 _exoNeedsFlipHorzAnd90Rotate = System::Int8(0x7); static _DELPHI_CONST System::Int8 _exoNeeds270RotateCW = System::Int8(0x8); #define Camera_Raw_File_Extensions L"*.CRW;*.CR2;*.DNG;*.NEF;*.RAW;*.RAF;*.X3F;*.ORF;*.SRF;*.MR"\ L"W;*.DCR;*.BAY;*.PEF;*.SR2;*.ARW;*.KDC;*.MEF;*.3FR;*.K25;*."\ L"ERF;*.CAM;*.CS1;*.DC2;*.DCS;*.FFF;*.MDC;*.MOS;*.NRW;*.PTX;"\ L"*.PXN;*.RDC;*.RW2;*.RWL;*.IIQ;*.SRW" static _DELPHI_CONST System::Int8 IEM_OP_NONE = System::Int8(0x0); static _DELPHI_CONST System::Int8 IEM_OP_INSERT = System::Int8(0x1); static _DELPHI_CONST System::Int8 IEM_OP_DELETE = System::Int8(0x2); static _DELPHI_CONST System::Int8 IEM_OP_MOVE = System::Int8(0x3); static _DELPHI_CONST System::Int8 IEM_OP_SWAP = System::Int8(0x4); static _DELPHI_CONST System::Int8 IEM_OP_MOVEGROUP = System::Int8(0x5); static _DELPHI_CONST System::Int8 IEM_OP_CLEAR = System::Int8(0x6); static _DELPHI_CONST System::Int8 IEM_OP_ALLOCATE = System::Int8(0x7); extern DELPHI_PACKAGE System::AnsiString IEEXIFUSERCOMMENTCODE_UNICODE; extern DELPHI_PACKAGE System::AnsiString IEEXIFUSERCOMMENTCODE_ASCII; extern DELPHI_PACKAGE System::AnsiString IEEXIFUSERCOMMENTCODE_JIS; extern DELPHI_PACKAGE System::AnsiString IEEXIFUSERCOMMENTCODE_UNDEFINED; static _DELPHI_CONST System::Int8 IEMVIEWSNAPSHOTVERSION = System::Int8(0x9); static _DELPHI_CONST System::Int8 IEAnnotImageEmbedded = System::Int8(0x1); static _DELPHI_CONST System::Int8 IEAnnotImageReference = System::Int8(0x2); static _DELPHI_CONST System::Int8 IEAnnotStraightLine = System::Int8(0x3); static _DELPHI_CONST System::Int8 IEAnnotFreehandLine = System::Int8(0x4); static _DELPHI_CONST System::Int8 IEAnnotHollowRectangle = System::Int8(0x5); static _DELPHI_CONST System::Int8 IEAnnotFilledRectangle = System::Int8(0x6); static _DELPHI_CONST System::Int8 IEAnnotTypedText = System::Int8(0x7); static _DELPHI_CONST System::Int8 IEAnnotTextFromFile = System::Int8(0x8); static _DELPHI_CONST System::Int8 IEAnnotTextStamp = System::Int8(0x9); static _DELPHI_CONST System::Int8 IEAnnotAttachANote = System::Int8(0xa); static _DELPHI_CONST System::Int8 IEAnnotForm = System::Int8(0xc); static _DELPHI_CONST System::Int8 IEAnnotOCRRegion = System::Int8(0xd); static _DELPHI_CONST System::Int8 IEMAXCHANNELS = System::Int8(0x4); extern DELPHI_PACKAGE TIE_OpenColorProfile IE_OpenColorProfile; extern DELPHI_PACKAGE TIE_CloseColorProfile IE_CloseColorProfile; extern DELPHI_PACKAGE TIE_CreateMultiProfileTransform IE_CreateMultiProfileTransform; extern DELPHI_PACKAGE TIE_DeleteColorTransform IE_DeleteColorTransform; extern DELPHI_PACKAGE TIE_TranslateColors IE_TranslateColors; static _DELPHI_CONST System::Int8 IE_COLOR_GRAY = System::Int8(0x1); static _DELPHI_CONST System::Int8 IE_COLOR_RGB = System::Int8(0x2); static _DELPHI_CONST System::Int8 IE_COLOR_XYZ = System::Int8(0x3); static _DELPHI_CONST System::Int8 IE_COLOR_Yxy = System::Int8(0x4); static _DELPHI_CONST System::Int8 IE_COLOR_Lab = System::Int8(0x5); static _DELPHI_CONST System::Int8 IE_COLOR_3_CHANNEL = System::Int8(0x6); static _DELPHI_CONST System::Int8 IE_COLOR_CMYK = System::Int8(0x7); static _DELPHI_CONST System::Int8 IE_COLOR_5_CHANNEL = System::Int8(0x8); static _DELPHI_CONST System::Int8 IE_COLOR_6_CHANNEL = System::Int8(0x9); static _DELPHI_CONST System::Int8 IE_COLOR_7_CHANNEL = System::Int8(0xa); static _DELPHI_CONST System::Int8 IE_COLOR_8_CHANNEL = System::Int8(0xb); static _DELPHI_CONST System::Int8 IE_COLOR_NAMED = System::Int8(0xc); static _DELPHI_CONST System::Int8 IE_PROFILE_READ = System::Int8(0x1); static _DELPHI_CONST System::Int8 IE_PROFILE_READWRITE = System::Int8(0x2); static _DELPHI_CONST System::Int8 IE_PROFILE_FILENAME = System::Int8(0x1); static _DELPHI_CONST System::Int8 IE_PROFILE_MEMBUFFER = System::Int8(0x2); extern DELPHI_PACKAGE System::AnsiString IE_LCS_SIGNATURE; static _DELPHI_CONST System::Int8 IE_LCS_CALIBRATED_RGB = System::Int8(0x0); extern DELPHI_PACKAGE System::AnsiString IE_LCS_sRGB; extern DELPHI_PACKAGE System::AnsiString IE_LCS_WINDOWS_COLOR_SPACE; static _DELPHI_CONST System::Int8 IE_LCS_GM_BUSINESS = System::Int8(0x1); static _DELPHI_CONST System::Int8 IE_LCS_GM_GRAPHICS = System::Int8(0x2); static _DELPHI_CONST System::Int8 IE_LCS_GM_IMAGES = System::Int8(0x4); static _DELPHI_CONST System::Int8 IE_LCS_GM_ABS_COLORIMETRIC = System::Int8(0x8); static _DELPHI_CONST System::Int8 IE_PROOF_MODE = System::Int8(0x1); static _DELPHI_CONST System::Int8 IE_NORMAL_MODE = System::Int8(0x2); static _DELPHI_CONST System::Int8 IE_BEST_MODE = System::Int8(0x3); static _DELPHI_CONST int IE_ENABLE_GAMUT_CHECKING = int(0x10000); static _DELPHI_CONST int IE_USE_RELATIVE_COLORIMETRIC = int(0x20000); static _DELPHI_CONST int IE_FAST_TRANSLATE = int(0x40000); static _DELPHI_CONST System::Int8 IE_INDEX_DONT_CARE = System::Int8(0x0); static _DELPHI_CONST System::Int8 IE_INTENT_PERCEPTUAL = System::Int8(0x0); static _DELPHI_CONST System::Int8 IE_INTENT_RELATIVE_COLORIMETRIC = System::Int8(0x1); static _DELPHI_CONST System::Int8 IE_INTENT_SATURATION = System::Int8(0x2); static _DELPHI_CONST System::Int8 IE_INTENT_ABSOLUTE_COLORIMETRIC = System::Int8(0x3); extern DELPHI_PACKAGE System::StaticArray IE_CS2IF; extern DELPHI_PACKAGE System::StaticArray iebitmask1; extern DELPHI_PACKAGE System::StaticArray ierevertbyte; extern DELPHI_PACKAGE void __fastcall IECopyEXIF(System::TObject* source_, System::TObject* dest_, bool copyBitmap); extern DELPHI_PACKAGE void __fastcall SaveEXIFToStandardBuffer(System::TObject* params, void * &Buffer, int &BufferLength, bool savePreamble); extern DELPHI_PACKAGE bool __fastcall CheckEXIFFromStandardBuffer(void * Buffer, int BufferLength); extern DELPHI_PACKAGE bool __fastcall LoadEXIFFromStandardBuffer(void * Buffer, int BufferLength, System::TObject* params); extern DELPHI_PACKAGE __int64 __fastcall IESearchEXIFInfo(System::Classes::TStream* Stream); extern DELPHI_PACKAGE bool __fastcall IELoadEXIFFromTIFF(System::Classes::TStream* Stream, System::TObject* params, bool loadXMP)/* overload */; extern DELPHI_PACKAGE bool __fastcall IELoadParamsFromTIFF(System::Classes::TStream* Stream, System::TObject* params, int page)/* overload */; extern DELPHI_PACKAGE System::TDateTime __fastcall EXIFDateToDateTime(const System::UnicodeString sEXIFDate); extern DELPHI_PACKAGE System::UnicodeString __fastcall DateTimeToEXIFDate(System::TDateTime ADateTime); extern DELPHI_PACKAGE bool __fastcall IEReadEXIFFromMOV(const System::WideString FileName, System::TObject* OutParams)/* overload */; extern DELPHI_PACKAGE bool __fastcall IEReadEXIFFromMOV(System::Classes::TStream* Stream, System::TObject* OutParams)/* overload */; extern DELPHI_PACKAGE void __fastcall IERegisterFormats(void); extern DELPHI_PACKAGE void __fastcall IEUnregisterFormats(void); extern DELPHI_PACKAGE void __fastcall iepdf_WriteLn(System::Classes::TStream* Stream, System::AnsiString line); extern DELPHI_PACKAGE void __fastcall iepdf_Write(System::Classes::TStream* Stream, System::AnsiString line); extern DELPHI_PACKAGE void __fastcall iepdf_WriteHeader(System::Classes::TStream* Stream); extern DELPHI_PACKAGE void __fastcall iepdf_WriteFooter(System::Classes::TStream* Stream, System::Classes::TList* IndirectObjects, TIEPDFObject* info); extern DELPHI_PACKAGE void __fastcall iepdf_AddIndirectObject(System::Classes::TList* IndirectObjects, TIEPDFObject* obj); extern DELPHI_PACKAGE void __fastcall iepdf_WriteIndirectObjects(System::Classes::TStream* Stream, System::Classes::TList* IndirectObjects); extern DELPHI_PACKAGE TIEPDFDictionaryObject* __fastcall iepdf_AddCatalog(System::Classes::TList* IndirectObjects); extern DELPHI_PACKAGE TIEPDFDictionaryObject* __fastcall iepdf_AddPageTree(System::Classes::TList* IndirectObjects, System::Classes::TList* pages); extern DELPHI_PACKAGE void __fastcall iepdf_AddPage(System::Classes::TList* IndirectObjects, System::Classes::TList* pages, TIEPDFDictionaryObject* Resources, TIEPDFArrayObject* MediaBox, int Content); extern DELPHI_PACKAGE int __fastcall IEPDFFrameCount(System::Classes::TStream* Stream)/* overload */; extern DELPHI_PACKAGE int __fastcall IEPDFFrameCount(const System::WideString Filename)/* overload */; extern DELPHI_PACKAGE int __fastcall IEIFI(bool cond, int val1, int val2); extern DELPHI_PACKAGE double __fastcall IEIFD(bool cond, double val1, double val2); extern DELPHI_PACKAGE TIEBitmap* __fastcall IEIFB(bool cond, TIEBitmap* val1, TIEBitmap* val2); extern DELPHI_PACKAGE void __fastcall IEAdjustEXIFOrientation(TIEBitmap* Bitmap, int Orientation); extern DELPHI_PACKAGE System::Word __fastcall IECSwapWord(System::Word i, bool sc); extern DELPHI_PACKAGE int __fastcall IECSwapDWord(int i, bool sc); extern DELPHI_PACKAGE __int64 __fastcall IECSwapInt64(__int64 i, bool sc); extern DELPHI_PACKAGE System::Word __fastcall IEStreamReadWord(System::Classes::TStream* Stream, bool bigEndian); extern DELPHI_PACKAGE unsigned __fastcall IEStreamReadDWord(System::Classes::TStream* Stream, bool bigEndian); extern DELPHI_PACKAGE __int64 __fastcall IEStreamReadInt64(System::Classes::TStream* Stream, bool bigEndian); extern DELPHI_PACKAGE int __fastcall IEStreamWordAlign(System::Classes::TStream* Stream, bool &Aborting); extern DELPHI_PACKAGE void __fastcall IEStreamWriteLn(System::Classes::TStream* Stream, System::AnsiString Text); extern DELPHI_PACKAGE void __fastcall IEStreamWriteByte(System::Classes::TStream* Stream, System::Byte Value); extern DELPHI_PACKAGE HPALETTE __fastcall IECreateGrayPalette(void); extern DELPHI_PACKAGE void __fastcall IESetGrayPalette(Vcl::Graphics::TBitmap* Bitmap); extern DELPHI_PACKAGE bool __fastcall IEIsGrayPalette(Vcl::Graphics::TBitmap* Bitmap); extern DELPHI_PACKAGE void __fastcall IECopyTBitmapPaletteToTIEBitmap(Vcl::Graphics::TBitmap* source, TIEBitmap* dest); extern DELPHI_PACKAGE Winapi::Windows::PByte __fastcall IEFindXMPFromJpegTag(void * Buffer, int BufferLength); extern DELPHI_PACKAGE bool __fastcall IELoadXMPFromJpegTag(void * Buffer, int BufferLength, System::TObject* params); extern DELPHI_PACKAGE void __fastcall IESaveXMPToJpegTag(System::TObject* params, void * &Buffer, int &BufferLength); extern DELPHI_PACKAGE TIEDicomTagType __fastcall DicomStrToTag(System::AnsiString s); extern DELPHI_PACKAGE System::AnsiString __fastcall DicomTagToStr(TIEDicomTagType dt); extern DELPHI_PACKAGE System::Word __fastcall IETIFFCalcTagSize(int tagType); extern DELPHI_PACKAGE System::UnicodeString __fastcall TidyIPTCStr(const System::UnicodeString Value); extern DELPHI_PACKAGE System::UnicodeString __fastcall IEPaperSizeToStr(const TIOPDFPaperSize aSize); extern DELPHI_PACKAGE TIOPDFPaperSize __fastcall IEStrToPaperSize(const System::UnicodeString sSize, TIOPDFPaperSize aDefault = (TIOPDFPaperSize)(0xd)); extern DELPHI_PACKAGE TIOPDFPaperSize __fastcall IEPointsToPaperSize(const int Width, const int Height); extern DELPHI_PACKAGE TIOPDFPaperSize __fastcall IECalcPaperSize(const double Width, const double Height, bool Metric); extern DELPHI_PACKAGE void __fastcall IESwapIEBitmaps(TIEBitmap* &a, TIEBitmap* &b); extern DELPHI_PACKAGE bool __fastcall JpegLosslessTransformStream(System::Classes::TStream* SourceStream, System::Classes::TStream* DestStream, TIEJpegTransform Transform, bool GrayScale, TIEJpegCopyMarkers CopyMarkers, const Winapi::Windows::TRect &CutRect, bool UpdateEXIF = false); extern DELPHI_PACKAGE bool __fastcall JpegLosslessTransform(const System::WideString SourceFile, const System::WideString DestFile, TIEJpegTransform Transform, bool GrayScale, TIEJpegCopyMarkers CopyMarkers, const Winapi::Windows::TRect &CutRect, bool UpdateEXIF = false)/* overload */; extern DELPHI_PACKAGE bool __fastcall JpegLosslessTransform(const System::WideString SourceFile, const System::WideString DestFile, TIEJpegTransform Transform)/* overload */; extern DELPHI_PACKAGE bool __fastcall JpegLosslessTransform2(const System::WideString FileName, TIEJpegTransform Transform, bool GrayScale, TIEJpegCopyMarkers CopyMarkers, const Winapi::Windows::TRect &CutRect, bool UpdateEXIF = false)/* overload */; extern DELPHI_PACKAGE bool __fastcall JpegLosslessTransform2(const System::WideString FileName, TIEJpegTransform Transform)/* overload */; extern DELPHI_PACKAGE Hyiedefs::TRGB __fastcall IECMYK2RGB(Hyiedefs::TCMYK cmyk); extern DELPHI_PACKAGE Hyiedefs::TRGB __fastcall IECMYK2RGBROW(Hyiedefs::PCMYK inrow, Hyiedefs::PRGB outrow, int width, System::PInteger alphaRow, TIEICC* colorProfile)/* overload */; extern DELPHI_PACKAGE Hyiedefs::TRGB __fastcall IECMYK2RGBROW(Hyiedefs::PCMYK inrow, Hyiedefs::PRGB outrow, int width, System::PInteger alphaRow = (System::PInteger)(0x0))/* overload */; extern DELPHI_PACKAGE Hyiedefs::TCMYK __fastcall IERGB2CMYK(const Hyiedefs::TRGB rgb); extern DELPHI_PACKAGE void __fastcall IEDefaultConvertColorFunction(void * InputScanline, Hyiedefs::TIEColorSpace InputColorSpace, void * OutputScanline, Hyiedefs::TIEColorSpace OutputColorSpace, int ImageWidth, TIOParams* IOParams); extern DELPHI_PACKAGE System::AnsiString __fastcall IEAVISelectCodec(void); extern DELPHI_PACKAGE System::Classes::TStringList* __fastcall IEAVIGetCodecs(void); extern DELPHI_PACKAGE System::Classes::TStringList* __fastcall IEAVIGetCodecsDescription(void); extern DELPHI_PACKAGE bool __fastcall IEIsExtIOPluginLoaded(const System::UnicodeString FileName); extern DELPHI_PACKAGE int __fastcall IEAutoLoadIOPlugins(void); extern DELPHI_PACKAGE int __fastcall IEAddExtIOPlugin(const System::UnicodeString FileName); extern DELPHI_PACKAGE void __fastcall IEOptimizeGIF(const System::WideString InputFile, const System::WideString OutputFile); extern DELPHI_PACKAGE TIEFileFormatInfo* __fastcall IEFileFormatGetInfo(Hyieutils::TIOFileType FileType); extern DELPHI_PACKAGE int __fastcall IEFileFormatGetExtCount(Hyieutils::TIOFileType FileType); extern DELPHI_PACKAGE System::UnicodeString __fastcall IEFileFormatGetExt(Hyieutils::TIOFileType FileType, int idx); extern DELPHI_PACKAGE TIEFileFormatInfo* __fastcall IEFileFormatGetInfo2(System::UnicodeString Extension); extern DELPHI_PACKAGE void __fastcall IEFileFormatAdd(TIEFileFormatInfo* FileFormatInfo); extern DELPHI_PACKAGE void __fastcall IEFileFormatRemove(Hyieutils::TIOFileType FileType); extern DELPHI_PACKAGE void __fastcall IEUpdateGIFStatus(void); extern DELPHI_PACKAGE bool __fastcall IsKnownFormat(const System::WideString FileName, bool bIncludeVideoFiles = false); extern DELPHI_PACKAGE bool __fastcall IsKnownSaveFormat(const System::WideString FileName); extern DELPHI_PACKAGE Hyieutils::TIOFileType __fastcall FindFileFormat(const System::WideString FileName, TIEFindFormatMethod FindMethod = (TIEFindFormatMethod)(0x0))/* overload */; extern DELPHI_PACKAGE int __fastcall FindFileFormat(const System::WideString FileName, bool VerifyExtension)/* overload */; extern DELPHI_PACKAGE Hyieutils::TIOFileType __fastcall FindStreamFormat(System::Classes::TStream* Stream); extern DELPHI_PACKAGE bool __fastcall IEGetFromURL(const System::WideString URL, System::Classes::TStream* OutStream, const System::WideString ProxyAddress, const System::WideString ProxyUser, const System::WideString ProxyPassword, Hyiedefs::TIEProgressEvent OnProgress, System::TObject* Sender, Hyiedefs::pboolean Aborting, System::UnicodeString &FileExt); extern DELPHI_PACKAGE int __fastcall DeleteGIFIm(const System::WideString FileName, int idx); extern DELPHI_PACKAGE int __fastcall DeleteTIFFIm(const System::WideString FileName, int idx); extern DELPHI_PACKAGE void __fastcall DeleteDCXIm(const System::WideString FileName, int idx); extern DELPHI_PACKAGE int __fastcall DeleteTIFFImGroup(const System::WideString FileName, int *Indexes, const System::NativeInt Indexes_High); extern DELPHI_PACKAGE int __fastcall EnumGIFIm(const System::WideString FileName); extern DELPHI_PACKAGE int __fastcall EnumTIFFIm(const System::WideString FileName); extern DELPHI_PACKAGE int __fastcall EnumDCXIm(const System::WideString FileName); extern DELPHI_PACKAGE int __fastcall EnumTIFFStream(System::Classes::TStream* Stream); extern DELPHI_PACKAGE int __fastcall EnumICOIm(const System::WideString FileName); extern DELPHI_PACKAGE bool __fastcall CheckAniGIF(const System::WideString FileName); extern DELPHI_PACKAGE void __fastcall IEWriteICOImages(const System::WideString fileName, System::TObject* *images, const System::NativeInt images_High); extern DELPHI_PACKAGE void __fastcall ExtractTIFFImageStream(System::Classes::TStream* SourceStream, System::Classes::TStream* OutStream, int idx); extern DELPHI_PACKAGE void __fastcall ExtractTIFFImageFile(const System::WideString SourceFileName, const System::WideString OutFileName, int idx); extern DELPHI_PACKAGE void __fastcall InsertTIFFImageStream(System::Classes::TStream* SourceStream, System::Classes::TStream* InsertingStream, System::Classes::TStream* OutStream, int idx); extern DELPHI_PACKAGE void __fastcall InsertTIFFImageFile(const System::WideString SourceFileName, const System::WideString InsertingFileName, const System::WideString OutFileName, int idx); extern DELPHI_PACKAGE TIEBitmap* __fastcall IEAdjustDPI(TIEBitmap* bmp, TIOParams* Params, bool FilteredAdjustDPI); extern DELPHI_PACKAGE int __fastcall IEGetFileFramesCount(const System::WideString FileName); extern DELPHI_PACKAGE int __fastcall IEFindNumberWithKnownFormat(const System::WideString Directory); extern DELPHI_PACKAGE int __fastcall IECalcJpegFileQuality(const System::WideString FileName); extern DELPHI_PACKAGE int __fastcall IECalcJpegStreamQuality(System::Classes::TStream* Stream); extern DELPHI_PACKAGE System::UnicodeString __fastcall GetAllSupportedFileExtensions(bool bLoadFormats, bool bSaveFormats, bool bVideoFormats = true); extern DELPHI_PACKAGE System::UnicodeString __fastcall GetFileExtensionsOfType(Hyieutils::TIOFileType FileType); extern DELPHI_PACKAGE Hyieutils::TIOFileType __fastcall IEExtToFileFormat(const System::UnicodeString ext); extern DELPHI_PACKAGE Hyieutils::TIOFileType __fastcall IEFilenameToFileFormat(const System::UnicodeString FileName); extern DELPHI_PACKAGE bool __fastcall IEFileIsOfFormat(const System::UnicodeString sFilename, Hyieutils::TIOFileType aFormat); extern DELPHI_PACKAGE bool __fastcall IEIsInternalFormat(System::UnicodeString ex); extern DELPHI_PACKAGE void __fastcall IEInitialize_iexBitmaps(void); extern DELPHI_PACKAGE void __fastcall IEFinalize_iexBitmaps(void); } /* namespace Iexbitmaps */ #if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_IEXBITMAPS) using namespace Iexbitmaps; #endif #pragma pack(pop) #pragma option pop #pragma delphiheader end. //-- end unit ---------------------------------------------------------------- #endif // iexBitmapsHPP