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

// (DO NOT EDIT: machine generated header) 'EnMisc.pas' rev: 5.00

#ifndef EnMiscHPP
#define EnMiscHPP

#pragma delphiheader begin
#pragma option push -w-
#pragma option push -Vx
#include <Windows.hpp>	// Pascal unit
#include <Graphics.hpp>	// Pascal unit
#include <SysUtils.hpp>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.hpp>	// Pascal unit

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

namespace Enmisc
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS EEnvisionError;
class PASCALIMPLEMENTATION EEnvisionError : public Sysutils::Exception 
{
	typedef Sysutils::Exception inherited;
	
public:
	#pragma option push -w-inl
	/* Exception.Create */ inline __fastcall EEnvisionError(const AnsiString Msg) : Sysutils::Exception(
		Msg) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateFmt */ inline __fastcall EEnvisionError(const AnsiString Msg, const System::TVarRec 
		* Args, const int Args_Size) : Sysutils::Exception(Msg, Args, Args_Size) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateRes */ inline __fastcall EEnvisionError(int Ident)/* overload */ : Sysutils::Exception(
		Ident) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateResFmt */ inline __fastcall EEnvisionError(int Ident, const System::TVarRec * Args
		, const int Args_Size)/* overload */ : Sysutils::Exception(Ident, Args, Args_Size) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateHelp */ inline __fastcall EEnvisionError(const AnsiString Msg, int AHelpContext)
		 : Sysutils::Exception(Msg, AHelpContext) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateFmtHelp */ inline __fastcall EEnvisionError(const AnsiString Msg, const System::TVarRec 
		* Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Msg, Args, Args_Size, AHelpContext
		) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateResHelp */ inline __fastcall EEnvisionError(int Ident, int AHelpContext)/* overload */
		 : Sysutils::Exception(Ident, AHelpContext) { }
	#pragma option pop
	#pragma option push -w-inl
	/* Exception.CreateResFmtHelp */ inline __fastcall EEnvisionError(System::PResStringRec ResStringRec
		, const System::TVarRec * Args, const int Args_Size, int AHelpContext)/* overload */ : Sysutils::Exception(
		ResStringRec, Args, Args_Size, AHelpContext) { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~EEnvisionError(void) { }
	#pragma option pop
	
};


#pragma option push -b-
enum TImageFormat { ifBlackWhite, ifGray16, ifGray256, ifColor16, ifColor256, ifTrueColor };
#pragma option pop

typedef void __fastcall (__closure *TAcquireEvent)(const unsigned DibHandle, const Word XDpi, const 
	Word YDpi, const int CallBackData);

typedef Shortint TJpegQuality;

typedef int TIntegerArray[536870911];

typedef int *TpIntegerArray;

typedef void __fastcall (__closure *TEnvisionProgressEvent)(const System::TObject* Sender, const Byte 
	PercentProgress);

struct TSingleRect
{
	float Left;
	float Top;
	float Right;
	float Bottom;
} ;

//-- var, const, procedure ---------------------------------------------------
#define CCentimetersPerInch  (2.540000E+00)
#define CMetersPerInch  (2.540000E-02)
static const Extended CInchesPerMeter = 3.937008E+01;
extern PACKAGE AnsiString __fastcall DateToDateStr(const System::TDateTime Date, const AnsiString Mask
	);
extern PACKAGE AnsiString __fastcall TimeToTimeStr(const System::TDateTime Time, const AnsiString Mask
	);
extern PACKAGE int __fastcall MinInteger(const int Value1, const int Value2);
extern PACKAGE int __fastcall MaxInteger(const int Value1, const int Value2);
extern PACKAGE Extended __fastcall MinFloat(const Extended Value1, const Extended Value2);
extern PACKAGE Extended __fastcall MaxFloat(const Extended Value1, const Extended Value2);
extern PACKAGE Extended __fastcall RoundFloat(const Extended Value, const Word Places);
extern PACKAGE Extended __fastcall Power(const Extended Base, const Extended Exponent);
extern PACKAGE Extended __fastcall BoundFloat(const Extended Value, const Extended MinValue, const Extended 
	MaxValue);
extern PACKAGE int __fastcall BoundInteger(const int Value, const int MinValue, const int MaxValue);
	
extern PACKAGE int __fastcall IncWrap(const int Value, const int Min, const int Max);
extern PACKAGE int __fastcall DecWrap(const int Value, const int Min, const int Max);
extern PACKAGE void __fastcall SwapIntegers(int &Value1, int &Value2);
extern PACKAGE __int64 __fastcall SafeTrunc(const Extended X);
extern PACKAGE bool __fastcall IsOdd(const int Value);
extern PACKAGE bool __fastcall AreFlagsSet(const int Value, const int Flags);
extern PACKAGE double __fastcall InchesToCm(const double Inches);
extern PACKAGE double __fastcall CmToInches(const double Centimeters);
extern PACKAGE int __fastcall InchesToPixels(const double Inches, const Word Dpi);
extern PACKAGE double __fastcall PixelsToInches(const int Pixels, const Word Dpi);
extern PACKAGE Byte __fastcall DoProgress(const System::TObject* Sender, const TEnvisionProgressEvent 
	ProgressEvent, const int Current, const int Min, const int Max, const Shortint LastPercent);
extern PACKAGE void __fastcall BeginHourglass(void);
extern PACKAGE void __fastcall EndHourglass(void);
extern PACKAGE AnsiString __fastcall AddBackSlashToPath(const AnsiString Path);
extern PACKAGE void __fastcall RaiseLZWCompressionNotSupported(void);
extern PACKAGE int __fastcall Ceiling(const Extended Value);
extern PACKAGE int __fastcall Floor(const Extended Value);
extern PACKAGE int __fastcall RectWidth(const Windows::TRect &Rect);
extern PACKAGE int __fastcall RectHeight(const Windows::TRect &Rect);
extern PACKAGE AnsiString __fastcall GetTempFileName(const AnsiString PreName, AnsiString Extension)
	;

}	/* namespace Enmisc */
#if !defined(NO_IMPLICIT_NAMESPACE_USE)
using namespace Enmisc;
#endif
#pragma option pop	// -w-
#pragma option pop	// -Vx

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