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

// (DO NOT EDIT: machine generated header) 'FMX.UXlsBaseClientData.pas' rev: 27.00 (Windows)

#ifndef Fmx_UxlsbaseclientdataHPP
#define Fmx_UxlsbaseclientdataHPP

#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>	// Pascal unit
#include <SysInit.hpp>	// Pascal unit
#include <System.Classes.hpp>	// Pascal unit
#include <FMX.UXlsBaseRecords.hpp>	// Pascal unit
#include <FMX.UXlsSST.hpp>	// Pascal unit
#include <FMX.XlsMessages.hpp>	// Pascal unit
#include <FMX.UOle2Impl.hpp>	// Pascal unit

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

namespace Fmx
{
namespace Uxlsbaseclientdata
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TBaseClientData;
#pragma pack(push,4)
class PASCALIMPLEMENTATION TBaseClientData : public System::TObject
{
	typedef System::TObject inherited;
	
protected:
	virtual System::Word __fastcall GetId(void);
	virtual void __fastcall SetId(const System::Word Value);
	
public:
	Fmx::Uxlsbaserecords::TBaseRecord* RemainingData;
	__property System::Word Id = {read=GetId, write=SetId, nodefault};
	virtual void __fastcall ArrangeId(System::Word &MaxId);
	virtual void __fastcall Clear(void) = 0 ;
	virtual TBaseClientData* __fastcall CopyTo(void) = 0 ;
	virtual void __fastcall LoadFromStream(Fmx::Uole2impl::TOle2File* const DataStream, Fmx::Xlsmessages::TRecordHeader &RecordHeader, Fmx::Uxlsbaserecords::TBaseRecord* const First, Fmx::Uxlssst::TSST* const SST) = 0 ;
	virtual void __fastcall SaveToStream(Fmx::Uole2impl::TOle2File* const DataStream) = 0 ;
	virtual __int64 __fastcall TotalSize(void) = 0 ;
	virtual void __fastcall ArrangeCopyRowsAndCols(const int RowOfs, const int ColOfs);
	virtual void __fastcall ArrangeInsertRowsAndCols(const int aRowPos, const int aRowCount, const int aColPos, const int aColCount, const Fmx::Xlsmessages::TSheetInfo &SheetInfo) = 0 ;
	virtual void __fastcall ArrangeCopySheet(const Fmx::Xlsmessages::TSheetInfo &SheetInfo) = 0 ;
	__classmethod virtual Fmx::Uxlsbaserecords::ClassOfTBaseRecord __fastcall ObjRecord();
public:
	/* TObject.Create */ inline __fastcall TBaseClientData(void) : System::TObject() { }
	/* TObject.Destroy */ inline __fastcall virtual ~TBaseClientData(void) { }
	
};

#pragma pack(pop)

typedef System::TMetaClass* ClassOfTBaseClientData;

//-- var, const, procedure ---------------------------------------------------
}	/* namespace Uxlsbaseclientdata */
}	/* namespace Fmx */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FMX_UXLSBASECLIENTDATA)
using namespace Fmx::Uxlsbaseclientdata;
#endif
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FMX)
using namespace Fmx;
#endif
#pragma pack(pop)
#pragma option pop

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