CX Framework
Cross-platform C utility framework
Loading...
Searching...
No Matches
vfs.h File Reference

Virtual Filesystem (VFS) More...

#include <cx/fs/file.h>
#include <cx/fs/fs.h>
#include <cx/fs/vfsobj.h>
#include <cx/fs/vfsprovider.h>

Go to the source code of this file.

Macros

#define vfsMountProvider(vfs, provider, path, ...)    _vfsMountProvider(vfs, objInstBase(provider), path, opt_flags(__VA_ARGS__))
 
#define vfsMountFS(vfs, path, fsroot, ...)   _vfsMountFS(vfs, path, fsroot, opt_flags(__VA_ARGS__))
 
#define vfsMountVFS(vfs, path, vfs2, vfs2root, ...)    _vfsMountVFS(vfs, path, vfs2, vfs2root, opt_flags(__VA_ARGS__))
 

Typedefs

typedef struct VFS VFS
 VFS Object.
 
typedef struct VFSFile VFSFile
 

Enumerations

enum  VFSFlags {
  VFS_ReadOnly = 0x00000001 , VFS_CaseSensitive = 0x00000002 , VFS_NoCache = 0x00000004 , VFS_NewFiles = 0x00000008 ,
  VFS_AlwaysCOW = 0x00000010 , VFS_Opaque = 0x00000020
}
 

Functions

void vfsDestroy (VFS **pvfs)
 
bool vfsUnmount (VFS *vfs, strref path)
 
void vfsCurDir (VFS *vfs, string *out)
 
bool vfsSetCurDir (VFS *vfs, strref cur)
 
void vfsAbsolutePath (VFS *vfs, string *out, strref path)
 
FSPathStat vfsStat (VFS *vfs, strref path, FSStat *stat)
 
bool vfsExist (VFS *vfs, strref path)
 
bool vfsIsDir (VFS *vfs, strref path)
 
bool vfsIsFile (VFS *vfs, strref path)
 
bool vfsSetTimes (VFS *vfs, strref path, int64 modified, int64 accessed)
 
bool vfsCreateDir (VFS *vfs, strref path)
 
bool vfsCreateAll (VFS *vfs, strref path)
 
bool vfsRemoveDir (VFS *vfs, strref path)
 
bool vfsDelete (VFS *vfs, strref path)
 
bool vfsCopy (VFS *vfs, strref from, strref to)
 
bool vfsRename (VFS *vfs, strref from, strref to)
 
bool vfsGetFSPath (string *out, VFS *vfs, strref path)
 
bool vfsSearchInit (FSSearchIter *iter, VFS *vfs, strref path, strref pattern, int typefilter, bool stat)
 
bool vfsSearchNext (FSSearchIter *iter)
 
void vfsSearchFinish (FSSearchIter *iter)
 
bool vfsSearchValid (FSSearchIter *iter)
 
VFSFile * vfsOpen (VFS *vfs, strref path, flags_t flags)
 
bool vfsClose (VFSFile *file)
 
bool vfsRead (VFSFile *file, void *buf, size_t sz, size_t *bytesread)
 
bool vfsWrite (VFSFile *file, void *buf, size_t sz, size_t *byteswritten)
 
bool vfsWriteString (VFSFile *file, strref str, size_t *byteswritten)
 
int64 vfsTell (VFSFile *file)
 
int64 vfsSeek (VFSFile *file, int64 off, FSSeekType seektype)
 
bool vfsFlush (VFSFile *file)
 

Detailed Description

Virtual Filesystem (VFS)

Definition in file vfs.h.