Pyrogenesis  trunk
Classes | Namespaces | Typedefs | Enumerations | Functions | Variables
vfs.h File Reference
#include "lib/file/file_system.h"
#include "lib/file/vfs/vfs_path.h"
Include dependency graph for vfs.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  IVFS
 

Namespaces

 ERR
 

Introduction


 

Typedefs

typedef std::shared_ptr< IVFSPIVFS
 

Enumerations

enum  VfsMountFlags { VFS_MOUNT_WATCH = 1, VFS_MOUNT_ARCHIVABLE = 2, VFS_MOUNT_MUST_EXIST = 4, VFS_MOUNT_KEEP_DELETED = 8 }
 

Functions

PIVFS CreateVfs ()
 create an instance of a Virtual File System. More...
 

Variables

constexpr size_t VFS_MIN_PRIORITY = 0
 
constexpr size_t VFS_MAX_PRIORITY = std::numeric_limits<size_t>::max()
 
const Status ERR::VFS_DIR_NOT_FOUND = -110100
 
const Status ERR::VFS_FILE_NOT_FOUND = -110101
 
const Status ERR::VFS_ALREADY_MOUNTED = -110102
 

Typedef Documentation

◆ PIVFS

typedef std::shared_ptr<IVFS> PIVFS

Enumeration Type Documentation

◆ VfsMountFlags

Enumerator
VFS_MOUNT_WATCH 

all real directories mounted during this operation will be watched for changes.

this flag is provided to avoid watches in output-only directories, e.g. screenshots/ (only causes unnecessary overhead).

VFS_MOUNT_ARCHIVABLE 

anything mounted from here should be included when building archives.

VFS_MOUNT_MUST_EXIST 

return ERR::VFS_DIR_NOT_FOUND if the given real path doesn't exist.

(the default behavior is to create all real directories in the path)

VFS_MOUNT_KEEP_DELETED 

keep the files named "*.DELETED" visible in the VFS directories.

the standard behavior of hiding the file with the same name minus the ".DELETED" suffix will still apply. (the default behavior is to hide both the suffixed and unsuffixed files)

Function Documentation

◆ CreateVfs()

PIVFS CreateVfs ( )

create an instance of a Virtual File System.

note: there is no limitation to a single instance, it may make sense to create and destroy VFS instances during each unit test.

Variable Documentation

◆ VFS_MAX_PRIORITY

constexpr size_t VFS_MAX_PRIORITY = std::numeric_limits<size_t>::max()

◆ VFS_MIN_PRIORITY

constexpr size_t VFS_MIN_PRIORITY = 0