## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- File List
- File Members

# iutil/vfs.h File Reference

Virtual File System SCF interface. More...

`#include "csutil/scf.h"`
`#include "iutil/databuff.h"`

Go to the source code of this file.

## Classes

struct | csFileTime
| File time structure - used to query and set the last-modification time of a file. More...
struct | iFile
| A replacement for FILE type in the virtual file space. More...
struct | iVFS
| The Virtual Filesystem Class is intended to be the only way for Crystal Space engine to access the files. More...

## File opening flags

#define | VFS_FILE_APPEND 0x00000002
| Open file for append.
#define | VFS_FILE_MODE 0x0000000f
| File open mode mask.
#define | VFS_FILE_READ 0x00000000
| Open file for reading.
#define | VFS_FILE_UNCOMPRESSED 0x80000000
| Store file uncompressed (no gain possible).
#define | VFS_FILE_WRITE 0x00000001
| Open file for writing.

## File status codes

#define | VFS_STATUS_ACCESSDENIED 4
| Access denied: either you have no write access, the filesystem is read-only or you tried to read a file opened for write access.
#define | VFS_STATUS_IOERROR 5
| An error occured during reading or writing data.
#define | VFS_STATUS_NOSPACE 2
| Device has no more space for file data.
#define | VFS_STATUS_OK 0
| File status ok.
#define | VFS_STATUS_OTHER 1
| Unclassified error.
#define | VFS_STATUS_RESOURCES 3
| Not enough system resources.

## Defines

#define | ASSIGN_FILETIME(ft, tm)
| This macro can be used to assign a "struct tm" to a csFileTime.
#define | VFS_MAX_PATH_LEN 256
| The maximal "virtual" path+filename length.
#define | VFS_PATH_DIVIDER ','
| Composite path divider.
#define | VFS_PATH_SEPARATOR '/'
| The "virtual" path separator.

## Detailed Description

Virtual File System SCF interface.

Definition in file vfs.h.