// Borland C++ Builder
// Copyright (c) 1995, 2005 by Borland Software Corporation
// All rights reserved

// (DO NOT EDIT: machine generated header) 'Rvdlinterbase.pas' rev: 10.00

#ifndef RvdlinterbaseHPP
#define RvdlinterbaseHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp>	// Pascal unit
#include <Sysinit.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit
#include <Sysutils.hpp>	// Pascal unit
#include <Forms.hpp>	// Pascal unit
#include <Rvdlcommon.hpp>	// Pascal unit
#include <Rvdlbase.hpp>	// Pascal unit
#include <Rvdldataset.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <Db.hpp>	// Pascal unit
#include <Ibdatabase.hpp>	// Pascal unit
#include <Ibcustomdataset.hpp>	// Pascal unit
#include <Ibquery.hpp>	// Pascal unit

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

namespace Rvdlinterbase
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TDLInterbaseDriver;
class PASCALIMPLEMENTATION TDLInterbaseDriver : public Rvdldataset::TDLDataSetDriver 
{
	typedef Rvdldataset::TDLDataSetDriver inherited;
	
public:
	virtual Rvdlbase::TDLBaseConnection* __fastcall CreateConnection(void);
	virtual Rvdlbase::TDLBaseResultSet* __fastcall CreateResultSet(Rvdlbase::TDLBaseConnection* AConnection);
	virtual void __fastcall Information(Rvdlcommon::TDLInformation &Params);
public:
	#pragma option push -w-inl
	/* TDLBaseDriver.Create */ inline __fastcall virtual TDLInterbaseDriver(void) : Rvdldataset::TDLDataSetDriver() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TDLBaseDriver.Destroy */ inline __fastcall virtual ~TDLInterbaseDriver(void) { }
	#pragma option pop
	
};


class DELPHICLASS TDLInterbaseConnection;
class PASCALIMPLEMENTATION TDLInterbaseConnection : public Rvdldataset::TDLDataSetConnection 
{
	typedef Rvdldataset::TDLDataSetConnection inherited;
	
protected:
	Ibdatabase::TIBDatabase* FDatabase;
	Ibdatabase::TIBTransaction* FTransaction;
	
public:
	virtual void __fastcall Connect(AnsiString DataSource, AnsiString UserName, AnsiString Password, Classes::TStringList* OptionList);
	virtual void __fastcall Disconnect(void);
	virtual void __fastcall GetTableNames(Classes::TStrings* List);
	__property Ibdatabase::TIBDatabase* Database = {read=FDatabase};
	__property Ibdatabase::TIBTransaction* Transaction = {read=FTransaction};
public:
	#pragma option push -w-inl
	/* TDLBaseConnection.Create */ inline __fastcall virtual TDLInterbaseConnection(void) : Rvdldataset::TDLDataSetConnection() { }
	#pragma option pop
	
public:
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TDLInterbaseConnection(void) { }
	#pragma option pop
	
};


class DELPHICLASS TDLInterbaseResultSet;
class PASCALIMPLEMENTATION TDLInterbaseResultSet : public Rvdldataset::TDLDataSetResultSet 
{
	typedef Rvdldataset::TDLDataSetResultSet inherited;
	
public:
	virtual Db::TDataSet* __fastcall OpenDataSet(AnsiString QueryStr);
public:
	#pragma option push -w-inl
	/* TDLBaseResultSet.Create */ inline __fastcall virtual TDLInterbaseResultSet(Rvdlbase::TDLBaseConnection* AConnection) : Rvdldataset::TDLDataSetResultSet(AConnection) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TDLBaseResultSet.Destroy */ inline __fastcall virtual ~TDLInterbaseResultSet(void) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------

}	/* namespace Rvdlinterbase */
using namespace Rvdlinterbase;
#pragma pack(pop)
#pragma option pop

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