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

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

#ifndef InftplistparsevmsHPP
#define InftplistparsevmsHPP

#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 <Classes.hpp>	// Pascal unit
#include <Inftplist.hpp>	// Pascal unit
#include <Inftplistparsebase.hpp>	// Pascal unit
#include <Inftplisttypes.hpp>	// Pascal unit

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

namespace Inftplistparsevms
{
//-- type declarations -------------------------------------------------------
class DELPHICLASS TIdVMSFTPListItem;
class PASCALIMPLEMENTATION TIdVMSFTPListItem : public Inftplisttypes::TIdOwnerFTPListItem 
{
	typedef Inftplisttypes::TIdOwnerFTPListItem inherited;
	
protected:
	AnsiString FGroupName;
	AnsiString FVMSOwnerPermissions;
	AnsiString FVMSWorldPermissions;
	AnsiString FVMSSystemPermissions;
	AnsiString FVMSGroupPermissions;
	int FNumberBlocks;
	int FBlockSize;
	int FVersion;
	
public:
	__property AnsiString GroupName = {read=FGroupName, write=FGroupName};
	__property AnsiString VMSSystemPermissions = {read=FVMSSystemPermissions, write=FVMSSystemPermissions};
	__property AnsiString VMSOwnerPermissions = {read=FVMSOwnerPermissions, write=FVMSOwnerPermissions};
	__property AnsiString VMSGroupPermissions = {read=FVMSGroupPermissions, write=FVMSGroupPermissions};
	__property AnsiString VMSWorldPermissions = {read=FVMSWorldPermissions, write=FVMSWorldPermissions};
	__property int Version = {read=FVersion, write=FVersion, nodefault};
	__property int NumberBlocks = {read=FNumberBlocks, write=FNumberBlocks, nodefault};
	__property int BlockSize = {read=FBlockSize, write=FBlockSize, nodefault};
public:
	#pragma option push -w-inl
	/* TInFTPListItem.Create */ inline __fastcall virtual TIdVMSFTPListItem(Classes::TCollection* AOwner) : Inftplisttypes::TIdOwnerFTPListItem(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TInFTPListItem.Destroy */ inline __fastcall virtual ~TIdVMSFTPListItem(void) { }
	#pragma option pop
	
};


class DELPHICLASS TInFTPLPVMS;
class PASCALIMPLEMENTATION TInFTPLPVMS : public Inftplistparsebase::TInFTPListBase 
{
	typedef Inftplistparsebase::TInFTPListBase inherited;
	
protected:
	#pragma option push -w-inl
	/* virtual class method */ virtual Inftplist::TInFTPListItem* __fastcall MakeNewItem(Inftplist::TInFTPListItems* AOwner) { return MakeNewItem(__classid(TInFTPLPVMS), AOwner); }
	#pragma option pop
	/*         class method */ static Inftplist::TInFTPListItem* __fastcall MakeNewItem(TMetaClass* vmt, Inftplist::TInFTPListItems* AOwner);
	/*         class method */ static bool __fastcall IsVMSHeader(TMetaClass* vmt, const AnsiString AData);
	/*         class method */ static bool __fastcall IsVMSFooter(TMetaClass* vmt, const AnsiString AData);
	/*         class method */ static bool __fastcall IsContinuedLine(TMetaClass* vmt, const AnsiString AData);
	#pragma option push -w-inl
	/* virtual class method */ virtual bool __fastcall ParseLine(const Inftplist::TInFTPListItem* AItem, const AnsiString APath = "") { return ParseLine(__classid(TInFTPLPVMS), AItem, APath); }
	#pragma option pop
	/*         class method */ static bool __fastcall ParseLine(TMetaClass* vmt, const Inftplist::TInFTPListItem* AItem, const AnsiString APath = "");
	
public:
	#pragma option push -w-inl
	/* virtual class method */ virtual AnsiString __fastcall GetIdent() { return GetIdent(__classid(TInFTPLPVMS)); }
	#pragma option pop
	/*         class method */ static AnsiString __fastcall GetIdent(TMetaClass* vmt);
	#pragma option push -w-inl
	/* virtual class method */ virtual bool __fastcall CheckListing(Classes::TStrings* AListing, const AnsiString ASysDescript = "", const bool ADetails = true) { return CheckListing(__classid(TInFTPLPVMS), AListing, ASysDescript, ADetails); }
	#pragma option pop
	/*         class method */ static bool __fastcall CheckListing(TMetaClass* vmt, Classes::TStrings* AListing, const AnsiString ASysDescript = "", const bool ADetails = true);
	#pragma option push -w-inl
	/* virtual class method */ virtual bool __fastcall ParseListing(Classes::TStrings* AListing, Inftplist::TInFTPListItems* ADir) { return ParseListing(__classid(TInFTPLPVMS), AListing, ADir); }
	#pragma option pop
	/*         class method */ static bool __fastcall ParseListing(TMetaClass* vmt, Classes::TStrings* AListing, Inftplist::TInFTPListItems* ADir);
public:
	#pragma option push -w-inl
	/* TObject.Create */ inline __fastcall TInFTPLPVMS(void) : Inftplistparsebase::TInFTPListBase() { }
	#pragma option pop
	#pragma option push -w-inl
	/* TObject.Destroy */ inline __fastcall virtual ~TInFTPLPVMS(void) { }
	#pragma option pop
	
};


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

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

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