CrystalSpace

Public API Reference

Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

iFile Struct Reference
[Virtual File System (VFS)]

A replacement for FILE type in the virtual file space. More...

#include <vfs.h>

Inheritance diagram for iFile:

iBase csMemFile csPhysicalFile List of all members.

Public Methods

virtual const char * GetName ()=0
 Query file name (in VFS).

virtual size_t GetSize ()=0
 Query file size.

virtual int GetStatus ()=0
 Check (and clear) file last error status.

virtual size_t Read (char *Data, size_t DataSize)=0
 Replacement for standard fread().

virtual size_t Write (const char *Data, size_t DataSize)=0
 Replacement for standard fwrite().

virtual void Flush ()=0
 Flush stream.

virtual bool AtEOF ()=0
 Replacement for standard feof().

virtual size_t GetPos ()=0
 Query current file pointer.

virtual csPtr< iDataBufferGetAllData (bool nullterm=false)=0
 Request whole content of the file as a single data buffer.

virtual bool SetPos (size_t newpos)=0
 Set new file pointer.


Detailed Description

A replacement for FILE type in the virtual file space.

Definition at line 103 of file vfs.h.


Member Function Documentation

virtual bool iFile::AtEOF   [pure virtual]
 

Replacement for standard feof().

Implemented in csMemFile, and csPhysicalFile.

virtual void iFile::Flush   [pure virtual]
 

Flush stream.

Implemented in csMemFile, and csPhysicalFile.

virtual csPtr<iDataBuffer> iFile::GetAllData bool    nullterm = false [pure virtual]
 

Request whole content of the file as a single data buffer.

Parameters:
nullterm  Set this to true if you want a null char to be appended to the buffer (e.g. for use with string functions.)
Remarks:
Null-termination might have a performance penalty (dependent on where the file is stored.) Use only when needed.
Returns:
The complete data contained in the file, or 0 if this doesn't support this function (e.g. write-opened VFS files.) Don't modify the contained data!

Implemented in csMemFile, and csPhysicalFile.

virtual const char* iFile::GetName   [pure virtual]
 

Query file name (in VFS).

Implemented in csMemFile, and csPhysicalFile.

virtual size_t iFile::GetPos   [pure virtual]
 

Query current file pointer.

Implemented in csMemFile, and csPhysicalFile.

virtual size_t iFile::GetSize   [pure virtual]
 

Query file size.

Implemented in csMemFile, and csPhysicalFile.

virtual int iFile::GetStatus   [pure virtual]
 

Check (and clear) file last error status.

See also:
VFS_STATUS_ACCESSDENIED

Implemented in csMemFile, and csPhysicalFile.

virtual size_t iFile::Read char *    Data,
size_t    DataSize
[pure virtual]
 

Replacement for standard fread().

Implemented in csMemFile, and csPhysicalFile.

virtual bool iFile::SetPos size_t    newpos [pure virtual]
 

Set new file pointer.

Parameters:
newpos  New position in file.
Returns:
Whether the position was successfully changed.

Implemented in csMemFile, and csPhysicalFile.

virtual size_t iFile::Write const char *    Data,
size_t    DataSize
[pure virtual]
 

Replacement for standard fwrite().

Implemented in csMemFile, and csPhysicalFile.


The documentation for this struct was generated from the following file:
Generated for Crystal Space by doxygen 1.2.18