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

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

#ifndef IexhelperfunctionsHPP
#define IexhelperfunctionsHPP

#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.Types.hpp>
#include <imageenproc.hpp>
#include <hyiedefs.hpp>
#include <imageenio.hpp>
#include <hyieutils.hpp>
#include <System.UITypes.hpp>

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

namespace Iexhelperfunctions
{
//-- forward type declarations -----------------------------------------------
typedef void *TImageEnIOHelper;

typedef void *TBitmapHelper;

typedef void *TIEBitmapHelper;

//-- type declarations -------------------------------------------------------
enum DECLSPEC_DENUM TLightOrigin : unsigned char { _loTopLeft, _loTopRight, _loBottomLeft, _loBottomRight };

//-- var, const, procedure ---------------------------------------------------
extern DELPHI_PACKAGE bool __fastcall IEResampleImageFile(const System::UnicodeString sInFilename, const System::UnicodeString sOutFilename, int iJpegQuality, int iMaxX, int iMaxY, bool bCanStretch = false, Hyiedefs::TResampleFilter QualityFilter = (Hyiedefs::TResampleFilter)(0x5), bool bAutoAdjustOrientation = false);
extern DELPHI_PACKAGE bool __fastcall IEConvertImageFile(const System::UnicodeString sInFilename, const System::UnicodeString sOutFilename, int iJpegQuality, bool bAutoAdjustOrientation = false);
extern DELPHI_PACKAGE bool __fastcall IECreateThumbnailFromFile(const System::UnicodeString sInFilename, const System::UnicodeString sOutFilename, int iMaxX, int iMaxY, bool bCanStretch, int iJPEGQuality, bool bAutoAdjustOrientation = false, Hyiedefs::TResampleFilter QualityFilter = (Hyiedefs::TResampleFilter)(0x5), bool bAddBorder = false, System::Uitypes::TColor cBorderColor = (System::Uitypes::TColor)(0x0), bool bAddShadow = false, int iBlurRadius = 0x4, int iShadowOffset = 0x4, System::Uitypes::TColor cShadowColor = (System::Uitypes::TColor)(0x0), System::Uitypes::TColor cBGColor = (System::Uitypes::TColor)(0xffffff));
extern DELPHI_PACKAGE bool __fastcall GetFileDetails(const System::UnicodeString sFilename, /* out */ __int64 &iFileSizeBytes, /* out */ System::TDateTime &dtCreationDate, /* out */ System::TDateTime &dtModifiedDate);
extern DELPHI_PACKAGE bool __fastcall GetImageDetails(const System::UnicodeString sFilename, /* out */ int &iWidth, /* out */ int &iHeight, /* out */ int &iBitsPerPixel)/* overload */;
extern DELPHI_PACKAGE System::Types::TPoint __fastcall GetImageDetails(const System::UnicodeString sFilename)/* overload */;
extern DELPHI_PACKAGE System::TDateTime __fastcall GetExifOrFileCreationDate(const System::UnicodeString sFilename, bool bReturnCreateDate = true);
extern DELPHI_PACKAGE bool __fastcall JPEGLosslessRotateFile(const System::WideString sInFilename, const System::WideString sOutFilename, int iRotateAngle)/* overload */;
extern DELPHI_PACKAGE bool __fastcall JPEGLosslessRotateFile(const System::WideString sFilename, int iRotateAngle)/* overload */;
extern DELPHI_PACKAGE bool __fastcall JPEGLosslessFlipFile(const System::WideString sInFilename, const System::WideString sOutFilename, Hyiedefs::TFlipDir Direction)/* overload */;
extern DELPHI_PACKAGE bool __fastcall JPEGLosslessFlipFile(const System::WideString sFilename, Hyiedefs::TFlipDir Direction)/* overload */;
extern DELPHI_PACKAGE bool __fastcall IERotateImageFile(const System::UnicodeString sInFilename, const System::UnicodeString sOutFilename, int iJpegQuality, int iRotateAngle, Hyiedefs::TIEAntialiasMode AntiAliasMode = (Hyiedefs::TIEAntialiasMode)(0x1), bool bCanUseLossless = true, System::Uitypes::TColor cBackgroundColor = (System::Uitypes::TColor)(0xffffff))/* overload */;
extern DELPHI_PACKAGE bool __fastcall IERotateImageFile(const System::UnicodeString sFilename, int iJpegQuality, int iRotateAngle, Hyiedefs::TIEAntialiasMode AntiAliasMode = (Hyiedefs::TIEAntialiasMode)(0x1), bool bCanUseLossless = true, System::Uitypes::TColor cBackgroundColor = (System::Uitypes::TColor)(0xffffff))/* overload */;
extern DELPHI_PACKAGE bool __fastcall IEFlipImageFile(const System::UnicodeString sInFilename, const System::UnicodeString sOutFilename, int iJpegQuality, Hyiedefs::TFlipDir Direction, bool bCanUseLossless = true)/* overload */;
extern DELPHI_PACKAGE bool __fastcall IEFlipImageFile(const System::UnicodeString sFilename, int iJpegQuality, Hyiedefs::TFlipDir Direction, bool bCanUseLossless = true)/* overload */;
extern DELPHI_PACKAGE int __fastcall IEReadCorrectOrientationOfImageFile(const System::UnicodeString sFilename, bool bConservativeChecking = true);
extern DELPHI_PACKAGE int __fastcall IEAutomaticallyRotateImageFile(const System::UnicodeString sFilename, bool bConservativeChecking = true);
extern DELPHI_PACKAGE System::UnicodeString __fastcall BitsPerPixelToStr(int iBitsPerPixel);
extern DELPHI_PACKAGE int __fastcall AngleToImageEnRotateAngle(int iAngle);
extern DELPHI_PACKAGE System::_di_IInterface __fastcall ShowTempHourglass(void);
}	/* namespace Iexhelperfunctions */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_IEXHELPERFUNCTIONS)
using namespace Iexhelperfunctions;
#endif
#pragma pack(pop)
#pragma option pop

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