// CodeGear C++Builder
// Copyright (c) 1995, 2015 by Embarcadero Technologies, Inc.
// All rights reserved

// (DO NOT EDIT: machine generated header) 'tiffilt.pas' rev: 30.00 (Windows)

#ifndef TiffiltHPP
#define TiffiltHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member 
#pragma pack(push,8)
#include <System.hpp>
#include <SysInit.hpp>
#include <Winapi.Windows.hpp>
#include <Vcl.Graphics.hpp>
#include <System.Classes.hpp>
#include <System.SysUtils.hpp>
#include <imageenproc.hpp>
#include <imageenio.hpp>
#include <hyiedefs.hpp>
#include <hyieutils.hpp>

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

namespace Tiffilt
{
//-- forward type declarations -----------------------------------------------
//-- type declarations -------------------------------------------------------
//-- var, const, procedure ---------------------------------------------------
extern DELPHI_PACKAGE bool __fastcall TIFFReadHeader(System::Classes::TStream* Stream, Hyieutils::PTIFFHeader ProvidedHeader, /* out */ bool &LittleEndian, /* out */ bool &BigTIFF, /* out */ int &DataPosSize, /* out */ __int64 &IFDPosition);
extern DELPHI_PACKAGE void __fastcall TIFFReadStream(Hyieutils::TIEBitmap* Bitmap, System::Classes::TStream* Stream, int &numi, Imageenio::TIOParamsVals* IOParams, Hyiedefs::TProgressRec &Progress, bool Preview, Hyieutils::TIEMask* &AlphaChannel, bool TranslateBase, bool IgnoreAlpha, bool IsExifThumb, bool IsEXIFData, Hyieutils::PTIFFHeader ProvidedHeader = (Hyieutils::PTIFFHeader)(0x0));
extern DELPHI_PACKAGE int __fastcall TIFFWriteStream(System::Classes::TStream* OStream, bool Ins, Hyieutils::TIEBitmap* Bitmap, Imageenio::TIOParamsVals* &IOParams, Hyiedefs::TProgressRec &Progress);
extern DELPHI_PACKAGE int __fastcall TIFFEnumImages(System::Classes::TStream* Stream);
extern DELPHI_PACKAGE int __fastcall TIFFDeleteImStream(System::Classes::TStream* Stream, int idx);
extern DELPHI_PACKAGE int __fastcall TIFFDeleteImStreamGroup(System::Classes::TStream* Stream, Hyiedefs::pIntegerArray idxlist, int idxcount);
extern DELPHI_PACKAGE bool __fastcall TIFFLoadTags(System::Classes::TStream* Stream, int &numi, int ImageIndex, Hyieutils::TIETIFFIFDReader* IFD);
extern DELPHI_PACKAGE void __fastcall TIFFExtractImStream(System::Classes::TStream* Stream, int idx, System::Classes::TStream* OutStream);
extern DELPHI_PACKAGE int __fastcall TIFFInsertImStream(System::Classes::TStream* Stream, System::Classes::TStream* ToInsert, int idx, System::Classes::TStream* OutStream, bool internal)/* overload */;
extern DELPHI_PACKAGE void __fastcall TIFFInsertImStream(System::Classes::TStream* Stream, System::Classes::TStream* ToInsert, int idx, System::Classes::TStream* OutStream)/* overload */;
extern DELPHI_PACKAGE bool __fastcall IsDNGStream(System::Classes::TStream* fs);
extern DELPHI_PACKAGE bool __fastcall IsTIFFStream(System::Classes::TStream* fs);
extern DELPHI_PACKAGE bool __fastcall IsHDPStream(System::Classes::TStream* fs);
extern DELPHI_PACKAGE bool __fastcall IEInjectTIFFEXIF(System::Classes::TStream* InputStream, System::Classes::TStream* OutputStream, const System::WideString InputFileName, const System::WideString OutputFileName, int pageIndex, Imageenio::TIOParamsVals* IOParams);
}	/* namespace Tiffilt */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_TIFFILT)
using namespace Tiffilt;
#endif
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// TiffiltHPP
