// Borland C++ Builder
// Copyright (c) 1995, 1998 by Borland International
// All rights reserved

// (DO NOT EDIT: machine generated header) 'ImageEnIO.pas' rev: 3.00

#ifndef ImageEnIOHPP
#define ImageEnIOHPP
#include <IEUtils.hpp>
#include <iedefs.hpp>
#include <ExtCtrls.hpp>
#include <ImageEnProc.hpp>
#include <ImageEnView.hpp>
#include <Dialogs.hpp>
#include <Forms.hpp>
#include <Controls.hpp>
#include <Graphics.hpp>
#include <Classes.hpp>
#include <SysUtils.hpp>
#include <Messages.hpp>
#include <Windows.hpp>
#include <SysInit.hpp>
#include <System.hpp>

//-- user supplied -----------------------------------------------------------

namespace Imageenio
{
//-- type declarations -------------------------------------------------------
struct TStreamJpegHeader
{
	char ID[5];
	int dim;
} ;

struct PCXSHead
{
	char ID[5];
	int dim;
} ;

struct TIFFSHead
{
	char ID[5];
	int dim;
} ;

enum ImageEnIO__1 { ppALL, ppAUTO, ppJPEG, ppTIFF, ppGIF, ppBMP, ppPCX, ppPNG };

typedef Set<ImageEnIO__1, ppALL, ppPNG>  TPreviewParams;

typedef void __fastcall (*TGIFLZWCompFunc)(Classes::TStream* Stream, int Height, int Width, bool Interlaced
	, char * FData, int BitsPerPixel);

typedef void __fastcall (*TGIFLZWDecompFunc)(Classes::TStream* Stream, int Height, int Width, bool Interlaced
	, char * FData);

typedef Windows::PByte __fastcall (*TTIFFLZWDecompFunc)(Windows::PByte CompBuf, int LineSize, int &Id
	);

typedef void __fastcall (*TTIFFLZWCompFunc)(Windows::PByte indata, int inputlen, Classes::TStream* outstream
	, int &id);

enum TIOPreviewsParamsItems { ioppDefaultLockPreview };

typedef Set<TIOPreviewsParamsItems, ioppDefaultLockPreview, ioppDefaultLockPreview>  TIOPreviewsParams
	;

enum TIOTIFFCompression { ioTIFF_UNCOMPRESSED, ioTIFF_CCITT1D, ioTIFF_G3FAX1D, ioTIFF_G3FAX2D, ioTIFF_G4FAX, 
	ioTIFF_LZW, ioTIFF_OLDJPEG, ioTIFF_JPEG, ioTIFF_PACKBITS };

enum TIOTIFFPhotometInterpret { ioTIFF_WHITEISZERO, ioTIFF_BLACKISZERO, ioTIFF_RGB, ioTIFF_RGBPALETTE, 
	ioTIFF_TRANSPMASK, ioTIFF_CMYK, ioTIFF_YCBCR, ioTIFF_CIELAB };

enum TIOJPEGColorspace { ioJPEG_RGB, ioJPEG_GRAYLEV, ioJPEG_YCbCr, ioJPEG_CMYK, ioJPEG_YCbCrK };

enum TIOJPEGDctMethod { ioJPEG_ISLOW, ioJPEG_IFAST, ioJPEG_FLOAT };

enum TIOJPEGScale { ioJPEG_AUTOCALC, ioJPEG_FULLSIZE, ioJPEG_HALF, ioJPEG_QUARTER, ioJPEG_EIGHTH };

enum TIOBMPVersion { ioBMP_BM, ioBMP_BM3, ioBMP_BMOS2V1, ioBMP_BMOS2V2 };

enum TIOBMPCompression { ioBMP_UNCOMPRESSED, ioBMP_RLE };

enum TIOPCXCompression { ioPCX_UNCOMPRESSED, ioPCX_RLE };

enum TIOPNGFilter { ioPNG_FILTER_NONE, ioPNG_FILTER_SUB, ioPNG_FILTER_PAETH };

typedef int TIOFileType;

class DELPHICLASS TIOParamsVals;
class DELPHICLASS TImageEnIO;
class DELPHICLASS TIETWainParams;
struct TIEDRect
{
	double Left;
	double Top;
	double Right;
	double Bottom;
} ;

struct TIETWSourceCaps
{
	Ieutils::TIEDoubleList* fXResolution;
	Ieutils::TIEDoubleList* fYResolution;
	Ieutils::TIEDoubleList* fXScaling;
	Ieutils::TIEDoubleList* fYScaling;
	Ieutils::TIEIntegerList* fPixelType;
	double fGamma;
	double fPhysicalHeight;
	double fPhysicalWidth;
	bool fFeederEnabled;
	Ieutils::TIEIntegerList* fOrientation;
	bool fIndicators;
	TIEDRect fAcquireFrame;
	bool fBufferedTransfer;
} ;

class PASCALIMPLEMENTATION TIETWainParams : public System::TObject 
{
	typedef System::TObject inherited;
	
private:
	Classes::TComponent* fOwner;
	bool fVisibleDialog;
	Classes::TList* fSourceListData;
	int fSelectedSource;
	bool fSourceListDataValid;
	bool fCapabilitiesValid;
	TIETWSourceCaps fCapabilities;
	void __fastcall FillSourceListData(void);
	void __fastcall FillCapabilities(void);
	System::AnsiString __fastcall GetSourceName(int idx);
	int __fastcall GetSourceCount(void);
	Ieutils::TIEDoubleList* __fastcall GetXResolution(void);
	Ieutils::TIEDoubleList* __fastcall GetYResolution(void);
	Ieutils::TIEDoubleList* __fastcall GetXScaling(void);
	Ieutils::TIEDoubleList* __fastcall GetYScaling(void);
	Ieutils::TIEIntegerList* __fastcall GetPixelType(void);
	double __fastcall GetGamma(void);
	double __fastcall GetPhysicalHeight(void);
	double __fastcall GetPhysicalWidth(void);
	bool __fastcall GetFeederEnabled(void);
	Ieutils::TIEIntegerList* __fastcall GetOrientation(void);
	void __fastcall SetSelectedSource(int v);
	bool __fastcall GetIndicators(void);
	void __fastcall SetFeederEnabled(bool v);
	void __fastcall SetIndicators(bool v);
	double __fastcall GetAcquireFrame(int idx);
	void __fastcall SetAcquireFrame(int idx, double v);
	bool __fastcall GetBufferedTransfer(void);
	void __fastcall SetBufferedTransfer(bool v);
	
public:
	__property bool VisibleDialog = {read=fVisibleDialog, write=fVisibleDialog, nodefault};
	__property System::AnsiString SourceName[int idx] = {read=GetSourceName};
	__property int SourceCount = {read=GetSourceCount, nodefault};
	__property int SelectedSource = {read=fSelectedSource, write=SetSelectedSource, nodefault};
	__property Ieutils::TIEDoubleList* XResolution = {read=GetXResolution};
	__property Ieutils::TIEDoubleList* YResolution = {read=GetYResolution};
	__property Ieutils::TIEDoubleList* XScaling = {read=GetXScaling};
	__property Ieutils::TIEDoubleList* YScaling = {read=GetYScaling};
	__property Ieutils::TIEIntegerList* PixelType = {read=GetPixelType};
	__property double Gamma = {read=GetGamma};
	__property double PhysicalHeight = {read=GetPhysicalHeight};
	__property double PhysicalWidth = {read=GetPhysicalWidth};
	__property bool FeederEnabled = {read=GetFeederEnabled, write=SetFeederEnabled, nodefault};
	__property Ieutils::TIEIntegerList* Orientation = {read=GetOrientation};
	__property bool ProgressIndicators = {read=GetIndicators, write=SetIndicators, nodefault};
	__property double AcquireFrameLeft = {read=GetAcquireFrame, write=SetAcquireFrame, index=0};
	__property double AcquireFrameTop = {read=GetAcquireFrame, write=SetAcquireFrame, index=1};
	__property double AcquireFrameRight = {read=GetAcquireFrame, write=SetAcquireFrame, index=2};
	__property double AcquireFrameBottom = {read=GetAcquireFrame, write=SetAcquireFrame, index=3};
	__property bool BufferedTransfer = {read=GetBufferedTransfer, write=SetBufferedTransfer, nodefault}
		;
	__fastcall TIETWainParams(Classes::TComponent* Owner);
	__fastcall virtual ~TIETWainParams(void);
	void __fastcall SetDefaultParams(void);
	void __fastcall Assign(TIETWainParams* Source);
	bool __fastcall SelectSourceByName(const System::AnsiString sn);
	void __fastcall Update(void);
};

class PASCALIMPLEMENTATION TImageEnIO : public Classes::TComponent 
{
	typedef Classes::TComponent inherited;
	
private:
	Graphics::TBitmap* fBitmap;
	Imageenview::TIEView* fImageEnView;
	Extctrls::TImage* fTImage;
	Graphics::TColor fBackground;
	TMsgLanguage fMsgLanguage;
	TIOPreviewsParams fPreviewsParams;
	TIETWainParams* fTwainParams;
	bool fStreamHeaders;
	Graphics::TFont* fPreviewFont;
	void __fastcall SetAttachedBitmap(Graphics::TBitmap* atBitmap);
	void __fastcall SetAttachedImageEn(Imageenview::TIEView* atImageEn);
	Graphics::TColor __fastcall GetReBackground(void);
	void __fastcall SetReBackground(Graphics::TColor v);
	void __fastcall Clear(void);
	void __fastcall SetPreviewFont(Graphics::TFont* f);
	void __fastcall SetTImage(Extctrls::TImage* v);
	void __fastcall SetIOPreviewParams(TIOPreviewsParams v);
	TIOPreviewsParams __fastcall GetIOPreviewParams(void);
	
protected:
	TIOParamsVals* fParams;
	bool fAborting;
	Iedefs::TProgressEvent fOnProgress;
	virtual void __fastcall Notification(Classes::TComponent* AComponent, Classes::TOperation Operation
		);
	void __fastcall OnBitmapChange(System::TObject* Sender);
	
public:
	__fastcall virtual TImageEnIO(Classes::TComponent* Owner);
	__fastcall virtual ~TImageEnIO(void);
	__property Graphics::TBitmap* AttachedBitmap = {read=fBitmap, write=SetAttachedBitmap};
	void __fastcall Update(void);
	bool __fastcall DoPreviews(TPreviewParams pp);
	__property Graphics::TBitmap* Bitmap = {read=fBitmap, write=fBitmap};
	__property TIOParamsVals* Params = {read=fParams};
	void __fastcall AssignParams(System::TObject* Source);
	void __fastcall SaveToFileJpeg(const System::AnsiString nf);
	void __fastcall LoadFromFileJpeg(const System::AnsiString nf);
	void __fastcall SaveToStreamJpeg(Classes::TStream* Stream);
	void __fastcall LoadFromStreamJpeg(Classes::TStream* Stream);
	int __fastcall LoadFromFileGif(const System::AnsiString nf);
	void __fastcall SaveToFileGif(const System::AnsiString nf);
	int __fastcall InsertToFileGif(const System::AnsiString nf);
	int __fastcall LoadFromStreamGif(Classes::TStream* Stream);
	void __fastcall SaveToStreamGif(Classes::TStream* Stream);
	void __fastcall SaveToStreamPCX(Classes::TStream* Stream);
	void __fastcall LoadFromStreamPCX(Classes::TStream* Stream);
	void __fastcall SaveToFilePCX(const System::AnsiString nf);
	void __fastcall LoadFromFilePCX(const System::AnsiString nf);
	int __fastcall LoadFromStreamTIFF(Classes::TStream* Stream);
	void __fastcall SaveToStreamTIFF(Classes::TStream* Stream);
	int __fastcall LoadFromFileTIFF(const System::AnsiString nf);
	void __fastcall SaveToFileTIFF(const System::AnsiString nf);
	int __fastcall InsertToFileTIFF(const System::AnsiString nf);
	void __fastcall SaveToStreamBMP(Classes::TStream* Stream);
	void __fastcall LoadFromStreamBMP(Classes::TStream* Stream);
	void __fastcall SaveToFileBMP(const System::AnsiString nf);
	void __fastcall LoadFromFileBMP(const System::AnsiString nf);
	void __fastcall LoadFromFileICO(const System::AnsiString nf);
	void __fastcall LoadFromStreamICO(Classes::TStream* Stream);
	void __fastcall LoadFromFileCUR(const System::AnsiString nf);
	void __fastcall LoadFromStreamCUR(Classes::TStream* Stream);
	void __fastcall LoadFromFilePNG(const System::AnsiString nf);
	void __fastcall LoadFromStreamPNG(Classes::TStream* Stream);
	void __fastcall SaveToFilePNG(const System::AnsiString nf);
	void __fastcall SaveToStreamPNG(Classes::TStream* Stream);
	void __fastcall ImportMetafile(const System::AnsiString nf, int Width, int Height);
	DYNAMIC void __fastcall LoadFromFile(const System::AnsiString nf);
	DYNAMIC void __fastcall SaveToFile(const System::AnsiString nf);
	__property bool Aborting = {read=fAborting, write=fAborting, nodefault};
	DYNAMIC void __fastcall ParamsFromFile(const System::AnsiString nf);
	DYNAMIC void __fastcall ParamsFromStream(Classes::TStream* Stream);
	bool __fastcall Acquire(void);
	bool __fastcall SelectAcquireSource(void);
	__property TIETWainParams* TWainParams = {read=fTwainParams};
	
__published:
	__property Imageenview::TIEView* AttachedImageEn = {read=fImageEnView, write=SetAttachedImageEn};
	__property Graphics::TColor Background = {read=GetReBackground, write=SetReBackground, default=0};
	__property Iedefs::TProgressEvent OnProgress = {read=fOnProgress, write=fOnProgress};
	__property Iedefs::TMsgLanguage MsgLanguage = {read=fMsgLanguage, write=fMsgLanguage, default=0};
	__property TIOPreviewsParams PreviewsParams = {read=GetIOPreviewParams, write=SetIOPreviewParams, default=0
		};
	__property bool StreamHeaders = {read=fStreamHeaders, write=fStreamHeaders, default=0};
	__property Graphics::TFont* PreviewFont = {read=fPreviewFont, write=SetPreviewFont};
	__property Extctrls::TImage* AttachedTImage = {read=fTImage, write=SetTImage};
};

class PASCALIMPLEMENTATION TIOParamsVals : public System::TObject 
{
	typedef System::TObject inherited;
	
private:
	TImageEnIO* fImageEnIO;
	int fBitsPerSample;
	int fSamplesPerPixel;
	int fWidth;
	int fHeight;
	int fDpiX;
	int fDpiY;
	int fFileType;
	TIOTIFFCompression fTIFF_Compression;
	int fTIFF_ImageIndex;
	TIOTIFFPhotometInterpret fTIFF_PhotometInterpret;
	int fTIFF_PlanarConf;
	int fTIFF_XPos;
	int fTIFF_YPos;
	System::AnsiString fTIFF_DocumentName;
	System::AnsiString fTIFF_ImageDescription;
	System::AnsiString fTIFF_PageName;
	int fTIFF_PageNumber;
	int fTIFF_PageCount;
	TTIFFLZWDecompFunc fTIFF_LZWDecompFunc;
	TTIFFLZWCompFunc fTIFF_LZWCompFunc;
	System::AnsiString fGIF_Version;
	int fGIF_ImageIndex;
	int fGIF_XPos;
	int fGIF_YPos;
	int fGIF_DelayTime;
	bool fGIF_FlagTranspColor;
	Iedefs::TRGB fGIF_TranspColor;
	bool fGIF_Interlaced;
	int fGIF_WinWidth;
	int fGIF_WinHeight;
	Iedefs::TRGB fGIF_Background;
	int fGIF_Ratio;
	TGIFLZWDecompFunc fGIF_LZWDecompFunc;
	TGIFLZWCompFunc fGIF_LZWCompFunc;
	TIOJPEGColorspace fJPEG_ColorSpace;
	int fJPEG_Quality;
	TIOJPEGDctMethod fJPEG_DCTMethod;
	bool fJPEG_OptimalHuffman;
	int fJPEG_Smooth;
	bool fJPEG_Progressive;
	TIOJPEGScale fJPEG_Scale;
	int fPCX_Version;
	TIOPCXCompression fPCX_Compression;
	TIOBMPVersion fBMP_Version;
	TIOBMPCompression fBMP_Compression;
	int fICO_ImageIndex;
	int fCUR_ImageIndex;
	int fCUR_XHotSpot;
	int fCUR_YHotSpot;
	bool fPNG_Interlaced;
	Iedefs::TRGB fPNG_Background;
	TIOPNGFilter fPNG_Filter;
	int fPNG_Compression;
	System::AnsiString __fastcall GetFileTypeStr(void);
	
public:
	System::AnsiString fFileName;
	Iedefs::RGBROW *fColorMap;
	int fColorMapCount;
	__property System::AnsiString FileName = {read=fFileName};
	__property System::AnsiString FileTypeStr = {read=GetFileTypeStr};
	__property int 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=fDpiX, nodefault};
	__property int DpiY = {read=fDpiY, write=fDpiY, nodefault};
	__property Iedefs::pRGBROW ColorMap = {read=fColorMap};
	__property int ColorMapCount = {read=fColorMapCount, nodefault};
	__property TIOTIFFCompression TIFF_Compression = {read=fTIFF_Compression, write=fTIFF_Compression, 
		nodefault};
	__property int TIFF_ImageIndex = {read=fTIFF_ImageIndex, write=fTIFF_ImageIndex, 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_XPos = {read=fTIFF_XPos, write=fTIFF_XPos, 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 TTIFFLZWDecompFunc TIFF_LZWDecompFunc = {read=fTIFF_LZWDecompFunc, write=fTIFF_LZWDecompFunc
		};
	__property TTIFFLZWCompFunc TIFF_LZWCompFunc = {read=fTIFF_LZWCompFunc, write=fTIFF_LZWCompFunc};
	__property System::AnsiString GIF_Version = {read=fGIF_Version, write=fGIF_Version};
	__property int GIF_ImageIndex = {read=fGIF_ImageIndex, write=fGIF_ImageIndex, 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 Iedefs::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 Iedefs::TRGB GIF_Background = {read=fGIF_Background, write=fGIF_Background};
	__property int GIF_Ratio = {read=fGIF_Ratio, write=fGIF_Ratio, nodefault};
	__property TGIFLZWDecompFunc GIF_LZWDecompFunc = {read=fGIF_LZWDecompFunc, write=fGIF_LZWDecompFunc
		};
	__property TGIFLZWCompFunc GIF_LZWCompFunc = {read=fGIF_LZWCompFunc, write=fGIF_LZWCompFunc};
	__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 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 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 int ICO_ImageIndex = {read=fICO_ImageIndex, write=fICO_ImageIndex, nodefault};
	__property int CUR_ImageIndex = {read=fCUR_ImageIndex, write=fCUR_ImageIndex, nodefault};
	__property int CUR_XHotSpot = {read=fCUR_XHotSpot, write=fCUR_XHotSpot, nodefault};
	__property int CUR_YHotSpot = {read=fCUR_YHotSpot, write=fCUR_YHotSpot, nodefault};
	__property bool PNG_Interlaced = {read=fPNG_Interlaced, write=fPNG_Interlaced, nodefault};
	__property Iedefs::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};
	__fastcall TIOParamsVals(TImageEnIO* IEIO);
	__fastcall virtual ~TIOParamsVals(void);
	void __fastcall SetDefaultParams(void);
	void __fastcall Assign(TIOParamsVals* Source);
	void __fastcall SaveToFile(const System::AnsiString FileName);
	void __fastcall SaveToStream(Classes::TStream* Stream);
	void __fastcall LoadFromFile(const System::AnsiString FileName);
	void __fastcall LoadFromStream(Classes::TStream* Stream);
};

typedef void __fastcall (*TIEReadImageStream)(Classes::TStream* Stream, Graphics::TBitmap* Bitmap, TIOParamsVals* 
	&IOParams, Iedefs::TProgressRec &Progress, bool Preview);

typedef void __fastcall (*TIEWriteImageStream)(Classes::TStream* Stream, Graphics::TBitmap* Bitmap, 
	TIOParamsVals* &IOParams, Iedefs::TProgressRec &Progress);

typedef bool __fastcall (*TIETryImageStream)(Classes::TStream* Stream);

struct TIEFileFormatInfo
{
	int FileType;
	System::SmallString<80>  FullName;
	System::SmallString<15>  Extension;
	System::SmallString<15>  Extension2;
	TIEReadImageStream ReadFunction;
	TIEWriteImageStream WriteFunction;
	TIETryImageStream TryFunction;
} ;

typedef TIEFileFormatInfo *PIEFileFormatInfo;

//-- var, const, procedure ---------------------------------------------------
#define ioUnknown (Byte)(0)
#define ioTIFF (Byte)(1)
#define ioGIF (Byte)(2)
#define ioJPEG (Byte)(3)
#define ioPCX (Byte)(4)
#define ioBMP (Byte)(5)
#define ioICO (Byte)(6)
#define ioCUR (Byte)(7)
#define ioPNG (Byte)(8)
#define ioWMF (Byte)(9)
#define ioEMF (Byte)(10)
#define ioUSER (Word)(10000)
extern PACKAGE TGIFLZWDecompFunc DefGIF_LZWDECOMPFUNC;
extern PACKAGE TGIFLZWCompFunc DefGIF_LZWCOMPFUNC;
extern PACKAGE TTIFFLZWDecompFunc DefTIFF_LZWDECOMPFUNC;
extern PACKAGE TTIFFLZWCompFunc DefTIFF_LZWCOMPFUNC;
extern PACKAGE Classes::TList* iegFileFormats;
extern PACKAGE int __fastcall DeleteGifIm(const System::AnsiString nf, int idx);
extern PACKAGE int __fastcall DeleteTIFFIm(const System::AnsiString nf, int idx);
extern PACKAGE int __fastcall EnumGifIm(const System::AnsiString nf);
extern PACKAGE int __fastcall EnumTIFFIm(const System::AnsiString nf);
extern PACKAGE bool __fastcall CheckAniGif(const System::AnsiString nf);
extern PACKAGE int __fastcall FindFileFormat(const System::AnsiString nf, bool VerifyExtension);
extern PACKAGE int __fastcall FindStreamFormat(Classes::TStream* fs);
extern PACKAGE PIEFileFormatInfo __fastcall IEFileFormatGetInfo(int FileType);
extern PACKAGE PIEFileFormatInfo __fastcall IEFileFormatGetInfo2(System::AnsiString Extension);
extern PACKAGE void __fastcall IEFileFormatAdd(const TIEFileFormatInfo &FileFormatInfo);
extern PACKAGE void __fastcall IEFileFormatRemove(int FileType);

}	/* namespace Imageenio */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Imageenio;
#endif
//-- end unit ----------------------------------------------------------------
#endif	// ImageEnIO
