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

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

#ifndef ImscanHPP
#define ImscanHPP

#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 <Winapi.Messages.hpp>
#include <System.SysUtils.hpp>
#include <System.Classes.hpp>
#include <Vcl.Graphics.hpp>
#include <Vcl.Controls.hpp>
#include <imageenio.hpp>
#include <ietwain.hpp>
#include <hyiedefs.hpp>
#include <hyieutils.hpp>
#include <Vcl.Dialogs.hpp>

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

namespace Imscan
{
//-- forward type declarations -----------------------------------------------
//-- type declarations -------------------------------------------------------
typedef void __fastcall (__closure *TIETWCloseCallBack)(void);

//-- var, const, procedure ---------------------------------------------------
extern DELPHI_PACKAGE bool __fastcall IETW_SelectImageSource(System::AnsiString &SelectedSourceName, Ietwain::PIETwainShared TwainShared, HWND callwnd);
extern DELPHI_PACKAGE bool __fastcall IETW_GetSourceList(System::Classes::TList* SList, Ietwain::PIETwainShared TwainShared, HWND callwnd);
extern DELPHI_PACKAGE bool __fastcall IETW_Acquire(Hyieutils::TIEBitmap* Bitmap, bool multi, Hyieutils::TIEMultiCallBack MultiCallBack, Ietwain::TIETwainParams* Params, Imageenio::TIOParamsVals* IOParams, Hyiedefs::TProgressRec &Progress, Ietwain::PIETwainShared TwainShared, HWND callwnd, bool DoNativePixelFormat);
extern DELPHI_PACKAGE bool __fastcall IETW_GetCapabilities(Ietwain::TIETwainParams* Params, Ietwain::TIETWSourceCaps &Capabilities, bool setcap, Ietwain::PIETwainShared TwainShared, HWND callwnd);
extern DELPHI_PACKAGE System::AnsiString __fastcall IETW_GetDefaultSource(Ietwain::PIETwainShared TwainShared, HWND callwnd);
extern DELPHI_PACKAGE void __fastcall IETW_FreeResources(Ietwain::PIETwainShared TwainShared, HWND callwnd);
extern DELPHI_PACKAGE void * __fastcall IETWAINAcquireOpen(TIETWCloseCallBack CloseCallBack, Hyieutils::TIEMultiCallBack MultiCallBack, Ietwain::TIETwainParams* Params, Ietwain::PIETwainShared TwainShared, Imageenio::TIOParamsVals* IOParams, Vcl::Controls::TWinControl* parent, bool DoNativePixelFormat);
extern DELPHI_PACKAGE void __fastcall IETWAINAcquireClose(void * &grec);
}	/* namespace Imscan */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_IMSCAN)
using namespace Imscan;
#endif
#pragma pack(pop)
#pragma option pop

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