Sourceforge.net - The VCF's Project Host
   The VCF Website Home   |   Online Discussion Forums   |   Sourceforge.net Project Page   

VCF::FilePeer Class Reference

The FilePeer interface is used to describe basic file operations that are then implemented for the specific OS platform. More...

#include <FilePeer.h>

Inheritance diagram for VCF::FilePeer:

VCF::LinuxFilePeer VCF::OSXFilePeer VCF::Win32FilePeer List of all members.

Public Member Functions

virtual ~FilePeer ()
virtual void setFile (File *file)=0
 close any open handles, reset all internal data, and it associates itself to a given file instance.
virtual uint64 getSize ()=0
 gets the size of the file in bytes
virtual void updateStat (File::StatMask statMask=File::smMaskDateAll)=0
 updates the informations about the file from the file system
virtual void setFileAttributes (const File::FileAttributes fileAttributes)=0
 set the fileAttributes of the file
virtual bool isExecutable ()=0
 tells if the file can be run by the OS.
virtual void setDateModified (const DateTime &dateModified)=0
 set the modification date of the file
virtual DateTime getDateModified ()=0
 get the modification date of the file
virtual DateTime getDateCreated ()=0
 get the creation date of the file
virtual DateTime getDateAccessed ()=0
 get the latest date the file has been accessed.
virtual void open (const String &fileName, uint32 openFlags=File::ofRead, File::ShareFlags shareFlags=File::shMaskAny)=0
 opens a file with read/write access Closes the old one if previously opened
virtual void close ()=0
 closes the file if open it can be called even if it was not opened
virtual void create (uint32 openFlags)=0
 creates a new file if the last character in the filename is a directory character, then a directory is created instead of a file.
virtual void remove ()=0
 deletes the file from the file system
virtual void move (const String &newFileName)=0
 renames/moves a file
virtual void copyTo (const String &copyFileName)=0
 copies the file into another one
virtual void initFileSearch (Directory::Finder *finder)=0
virtual FilefindNextFileInSearch (Directory::Finder *finder)=0
virtual void endFileSearch (Directory::Finder *finder)=0

Detailed Description

The FilePeer interface is used to describe basic file operations that are then implemented for the specific OS platform.

The File class uses an internal instance of this class to perform the actual work of dealing with files.


Constructor & Destructor Documentation

virtual VCF::FilePeer::~FilePeer  )  [inline, virtual]
 


Member Function Documentation

virtual void VCF::FilePeer::close  )  [pure virtual]
 

closes the file if open it can be called even if it was not opened

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::copyTo const String copyFileName  )  [pure virtual]
 

copies the file into another one

Parameters:
fileNameToCopyTo the filename to create/overwrite.

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::create uint32  openFlags  )  [pure virtual]
 

creates a new file if the last character in the filename is a directory character, then a directory is created instead of a file.

The file name is omitted here as this is stored in the File instance kept by the peer.

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::endFileSearch Directory::Finder finder  )  [pure virtual]
 

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual File* VCF::FilePeer::findNextFileInSearch Directory::Finder finder  )  [pure virtual]
 

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual DateTime VCF::FilePeer::getDateAccessed  )  [pure virtual]
 

get the latest date the file has been accessed.

Returns:
DateTime, the access date.

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual DateTime VCF::FilePeer::getDateCreated  )  [pure virtual]
 

get the creation date of the file

Returns:
DateTime, the creation date.

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual DateTime VCF::FilePeer::getDateModified  )  [pure virtual]
 

get the modification date of the file

Returns:
DateTime, the modification date.

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual uint64 VCF::FilePeer::getSize  )  [pure virtual]
 

gets the size of the file in bytes

Parameters:
uint64 the size

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::initFileSearch Directory::Finder finder  )  [pure virtual]
 

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual bool VCF::FilePeer::isExecutable  )  [pure virtual]
 

tells if the file can be run by the OS.

Returns:
bool, true if it does.

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::move const String newFileName  )  [pure virtual]
 

renames/moves a file

Parameters:
newFileName the filename

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::open const String fileName,
uint32  openFlags = File::ofRead,
File::ShareFlags  shareFlags = File::shMaskAny
[pure virtual]
 

opens a file with read/write access Closes the old one if previously opened

Parameters:
fileName the desired new filename
openFlags 
shareFlags 

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::remove  )  [pure virtual]
 

deletes the file from the file system

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::setDateModified const DateTime dateModified  )  [pure virtual]
 

set the modification date of the file

Parameters:
date the desired modification date

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::setFile File file  )  [pure virtual]
 

close any open handles, reset all internal data, and it associates itself to a given file instance.

Parameters:
File* pointer to a File instance

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::setFileAttributes const File::FileAttributes  fileAttributes  )  [pure virtual]
 

set the fileAttributes of the file

Parameters:
fileAttributes the desired attributes

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.

virtual void VCF::FilePeer::updateStat File::StatMask  statMask = File::smMaskDateAll  )  [pure virtual]
 

updates the informations about the file from the file system

Parameters:
statMask the mask indicating the infos we want to update

Implemented in VCF::LinuxFilePeer, VCF::OSXFilePeer, and VCF::Win32FilePeer.


The documentation for this class was generated from the following file:
   Comments or Suggestions?    License Information