MFFileSystem.h File Reference

Mount Fuji Engine FileSystem module. More...


Data Structures

struct  MFOpenData
 Open file data base structure. More...
struct  MFMountData
 Mount data base structure. More...

Typedefs

typedef MFFile * MFFileHandle
 Represents a Fuji File handle.
typedef int MFFileSystemHandle
 Represents a Fuji FileSystem.
typedef void(* MFAsyncOperationCompletedCallback )(MFFile *)
 Callback function type for file op completion notification.

Enumerations

enum  MFOpenFlags {
  MFOF_Read = 1, MFOF_Write = 2, MFOF_Text = 4, MFOF_Binary = 8,
  MFOF_Async = 16, MFOF_User = 256, MFOF_ForceInt = 0x7FFFFFFF
}
 File open flags. More...
enum  MFFileSeek { MFSeek_Begin, MFSeek_Current, MFSeek_End }
 File seek origin. More...
enum  MFFileState { MFFS_Unavailable = -1, MFFS_Ready = 0, MFFS_Busy, MFFS_Waiting }
 Represents asyncrenous file operation state. More...
enum  MFMountFlags {
  MFMF_FlattenDirectoryStructure = 1, MFMF_Recursive = 2, MFMF_DontCacheTOC = 4, MFMF_OnlyAllowExclusiveAccess = 8,
  MFMF_ForceUInt = 0xFFFFFFFF
}
 Mount flags. More...
enum  MFMountPriority {
  MFMP_Highest = 0, MFMP_VeryHigh = 1, MFMP_AboveNormal = 5, MFMP_Normal = 10,
  MFMP_BelowNormal = 15, MFMP_VeryLow = 20
}
 Mount priority enum. More...
enum  MFFileSystemHandles {
  MFFSH_Unknown = -1, MFFSH_NativeFileSystem = 0, MFFSH_MemoryFileSystem, MFFSH_ZipFileSystem,
  MFFSH_HTTPFileSystem, MFFSH_FTPFileSystem, MFFSH_Max, MFFSH_ForceInt = 0x7FFFFFFF
}
 FileSystem handle enums. More...

Functions

const char * MFFile_SystemPath (const char *filename=NULL)
 Gets the system file path.
const char * MFFile_HomePath (const char *filename=NULL)
 Gets the system home path.
MFFileHandle MFFile_Open (MFFileSystemHandle fileSystem, MFOpenData *pOpenData)
 Open a file.
int MFFile_Close (MFFileHandle fileHandle)
 Close a file.
int MFFile_Read (MFFileHandle fileHandle, void *pBuffer, uint32 bytes, bool async=false)
 Read data from a file.
int MFFile_Write (MFFileHandle fileHandle, const void *pBuffer, uint32 bytes, bool async=false)
 Write to a file.
int MFFile_Seek (MFFileHandle fileHandle, int bytes, MFFileSeek relativity)
 Seek the file.
int MFFile_Tell (MFFileHandle fileHandle)
 Tell the file position.
MFFileState MFFile_Query (MFFileHandle fileHandle)
 Get the state of a file.
int MFFile_GetSize (MFFileHandle fileHandle)
 Get the size of a file.
int MFFile_StdClose (void *stream)
 Close a file.
uint32 MFFile_StdRead (void *buffer, uint32 size, uint32 count, void *stream)
 Read data from a file.
uint32 MFFile_StdWrite (void *buffer, uint32 size, uint32 count, void *stream)
 Write to a file.
int MFFile_StdSeek (void *stream, long offset, int whence)
 Seek the file.
long MFFile_StdTell (void *stream)
 Tell the file position.
MFFileSystemHandle MFFileSystem_GetInternalFileSystemHandle (MFFileSystemHandles fileSystemHandle)
 Get a handle to a specific filesystem.
int MFFileSystem_Mount (MFFileSystemHandle fileSystem, MFMountData *pMountData)
 Mounts a filesystem.
int MFFileSystem_Dismount (const char *pMountpoint)
 Dismount a filesystem.
MFFileHandle MFFileSystem_Open (const char *pFilename, uint32 openFlags=MFOF_Read|MFOF_Binary)
 Open a file from the mounted filesystem stack.
char * MFFileSystem_Load (const char *pFilename, uint32 *pBytesRead=NULL)
 Load a file from the filesystem.
int MFFileSystem_Save (const char *pFilename, char *pBuffer, uint32 size)
 Write a file to a filesystem.
int MFFileSystem_GetSize (const char *pFilename)
 Get the size of a file.
bool MFFileSystem_Exists (const char *pFilename)
 See if a file is available to the filesystem.


Detailed Description

Provides functions to interact with the filesystem.
Author:
Manu Evans

Generated on Sat Oct 28 16:27:27 2006 for MountFuji Engine by  doxygen 1.4.5