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

# deFSVirtual Class Reference

`#include <deFileSystem_priv.hpp>`

Inheritance diagram for deFSVirtual:

[legend]
Collaboration diagram for deFSVirtual:

[legend]
List of all members.

## Public Member Functions
| deFSVirtual ()
| ~deFSVirtual ()
void * | GetInterface (IdeFileSystem::interface_t i)
deBoolean | OpenBaseFile (IdeFile *BaseFile, long OpenFlags)
deBoolean | OpenBaseFilename (const char *Filename, long OpenFlags)
deBoolean | CloseBaseFile ()
IdeFile * | Open (const char *Filename, long OpenFlags)
const char * | GetDirectory ()
| Get the current directoriy.
deBoolean | SetDirectory (const char *Directory)
| Set the current directory.
deBoolean | Rename (const char *OldFilename, const char *NewFilename)
deBoolean | Delete (const char *Filename, deFSPROGRESS StatusCallback)
deBoolean | Move (const char *OldFilename, const char *NewFilename, deFSPROGRESS StatusCallback)
deBoolean | Copy (const char *OldFilename, const char *NewFilename, deFSPROGRESS StatusCallback)
deBoolean | AddDirectory (const char *Directory)
deBoolean | DeleteDirectory (const char *Directory, deFSPROGRESS StatusCallback)
void * | FindFirst (const char *Pattern, deFileProperties *Properties)
deBoolean | FindNext (void *Handle, deFileProperties *Properties)
deBoolean | FindEnd (void *Handle)
## Protected Types
typedef deFSVirtual::VirtualFileEntry | VirtualFileEntry
## Protected Member Functions
deBoolean | Open (deFileVirtual *BaseFile, const char *Filename, long OpenFlags)
deBoolean | Close (deFileVirtual *FileEntry)
long | Read (deFileVirtual *FileEntry, void *Buffer, long Length)
long | Write (deFileVirtual *FileEntry, void *Buffer, long Length)
DWORD | deFSVirtual::SetSize (deFileVirtual *FileEntry, long NewSize, deFSPROGRESS *StatusCallback)
## Private Types
typedef deFSVirtual::VirtualHeader | VirtualHeader
typedef deFSVirtual::FindInfoVirtual | FindInfoVirtual
## Private Member Functions
deBoolean | ReadDirectoryTree ()
deBoolean | WriteDirectoryTree ()
deBoolean | DestroyDirectoryTree ()
DWORD | AdjustFile (deFileVirtual *FileEntry, long WriteSize, deBoolean MakeCopy, deFSPROGRESS *StatusCallback)
DWORD | MoveData (long StartPosition, long ByteShift, deFSPROGRESS *StatusCallback)
deBoolean | MatchPattern (const char *Pattern, const char *Filename)
deBoolean | IsPattern (const char *Pattern)
DWORD | deFSVirtual::DeleteDirectory (const char *Directory, deFSPROGRESS *StatusCallback)
VirtualFileEntry * | ParseDirectory (const char *Directory, deBoolean FileAttached, long *FileNameStart)
deBoolean | NameInUse (VirtualFileEntry *Directory, const char *Name, deBoolean *IsDirectory)
deBoolean | AdjustFilePositions (VirtualFileEntry *Directory, long StartPosition, long ByteShift)
## Private Attributes
IdeFSReal * | BaseFS
IdeFile * | BaseFile
deBoolean | BaseFileOwner
long | BaseFlags
VirtualFileEntry * | RootDirectory
VirtualFileEntry * | CurrentDirectory
char * | CurDirectoryName
## Friends
class | deFileVirtual

## Member Typedef Documentation

typedef struct deFSVirtual::FindInfoVirtual deFSVirtual::FindInfoVirtual`[private]`

typedef struct deFSVirtual::VirtualFileEntry deFSVirtual::VirtualFileEntry`[protected]`

typedef struct deFSVirtual::VirtualHeader deFSVirtual::VirtualHeader`[private]`

## Constructor & Destructor Documentation

deFSVirtual::deFSVirtual | ( |  | ) |

deFSVirtual::~deFSVirtual | ( |  | ) |

## Member Function Documentation

deBoolean deFSVirtual::AddDirectory | ( | const char * | Directory | ) | `[virtual]`

  | Create a directory Parameters:
  in] | Directory The name of the directory
Reimplemented from deFileSystem.

DWORD deFSVirtual::AdjustFile | ( | deFileVirtual * | FileEntry,
|  | long | WriteSize,
|  | deBoolean | MakeCopy,
|  | deFSPROGRESS * | StatusCallback
| ) | `[private]`

deBoolean deFSVirtual::AdjustFilePositions | ( | VirtualFileEntry * | Directory,
|  | long | StartPosition,
|  | long | ByteShift
| ) | `[private]`

deBoolean deFSVirtual::Close | ( | deFileVirtual * | FileEntry | ) | `[protected]`

deBoolean deFSVirtual::CloseBaseFile | ( |  | ) | `[virtual]`

| Implements IdeFSVirtual.

deBoolean deFSVirtual::Copy | ( | const char * | OldFilename,
|  | const char * | NewFilename,
|  | deFSPROGRESS | StatusCallback
| ) | `[virtual]`

  | Copy a file Parameters:
  in] | Filename File to copy
  in] | StatusCallback Pointer to a function to call while copying, pass a NULL for no callbacks
Returns: True/False if the copy was successful Reimplemented from deFileSystem.

DWORD deFSVirtual::deFSVirtual::DeleteDirectory | ( | const char * | Directory,
|  | deFSPROGRESS * | StatusCallback
| ) | `[private]`

DWORD deFSVirtual::deFSVirtual::SetSize | ( | deFileVirtual * | FileEntry,
|  | long | NewSize,
|  | deFSPROGRESS * | StatusCallback
| ) | `[protected]`

deBoolean deFSVirtual::Delete | ( | const char * | Filename,
|  | deFSPROGRESS | StatusCallback
| ) | `[virtual]`

  | Delete a file Parameters:
  in] | Filename File to Delete
  in] | StatusCallback Pointer to a function to call while deleting, pass a NULL for no callbacks
Returns: True/False if the delete was successful Reimplemented from deFileSystem.

deBoolean deFSVirtual::DeleteDirectory | ( | const char * | Directory,
|  | deFSPROGRESS | StatusCallback
| ) | `[virtual]`

  | Delete a directory Parameters:
  in] | Name of the directory to delete
  in] | StatusCallback Pointer to a function to call while deleting, pass a NULL for no callbacks
Returns: True/False if the delete was successful Reimplemented from deFileSystem.

deBoolean deFSVirtual::DestroyDirectoryTree | ( |  | ) | `[private]`

deBoolean deFSVirtual::FindEnd | ( | void * | Handle | ) | `[virtual]`

  | Finish a find and cleanup any memory usage Parameters:
  in] | Handle Find to finish
Returns: True if the find is done, False if there was a problem Reimplemented from deFileSystem.

void * deFSVirtual::FindFirst | ( | const char * | Pattern,
|  | deFileProperties * | Properties
| ) | `[virtual]`

  | Start a find on the filesystem Parameters:
  in] | Pattern Pattern to match the files to. ? to match 1 character, * for multiple character matching
  out] | Properties Information about the first file found that matches
Returns: A value used to identify the find for later finds Reimplemented from deFileSystem.

deBoolean deFSVirtual::FindNext | ( | void * | Handle,
|  | deFileProperties * | Properties
| ) | `[virtual]`

  | Find the next file in the list that matches Parameters:
  in] | Handle Value returned by FindFirst
  out] | Properties Information about the file found that matches
Returns: True if a file was found, False if no more files exist Reimplemented from deFileSystem.

const char * deFSVirtual::GetDirectory | ( |  | ) | `[virtual]`

| Get the current directoriy. Reimplemented from deFileSystem.

void * deFSVirtual::GetInterface | ( | IdeFileSystem::interface_t | i | ) | `[virtual]`

  | Function to obtain the proper interface for the filesystem Parameters:
  in] | i Input for the type of interface to return
Returns: Returns a pointer to the requested interface or NULL if an invalid interface Reimplemented from deFileSystem.

deBoolean deFSVirtual::IsPattern | ( | const char * | Pattern | ) | `[private]`

deBoolean deFSVirtual::MatchPattern | ( | const char * | Pattern,
|  | const char * | Filename
| ) | `[private]`

deBoolean deFSVirtual::Move | ( | const char * | OldFilename,
|  | const char * | NewFilename,
|  | deFSPROGRESS | StatusCallback
| ) | `[virtual]`

  | Move a file Parameters:
  in] | Filename File to move
  in] | StatusCallback Pointer to a function to call while moving, pass a NULL for no callbacks
Returns: True/False if the move was successful Reimplemented from deFileSystem.

DWORD deFSVirtual::MoveData | ( | long | StartPosition,
|  | long | ByteShift,
|  | deFSPROGRESS * | StatusCallback
| ) | `[private]`

deBoolean deFSVirtual::NameInUse | ( | VirtualFileEntry * | Directory,
|  | const char * | Name,
|  | deBoolean * | IsDirectory
| ) | `[private]`

deBoolean deFSVirtual::Open | ( | deFileVirtual * | BaseFile,
|  | const char * | Filename,
|  | long | OpenFlags
| ) | `[protected]`

IdeFile * deFSVirtual::Open | ( | const char * | Filename,
|  | long | OpenFlags
| ) | `[virtual]`

  | Open a file Parameters:
  in] | Filename Filename to open
  in] | OpenFlags flags for opening the filesystem deFile_Open_Create Create a file, fail if it exists deFile_Open_Existing Open an existing file, fail it if does not exist deFile_Open_Always Always open the file, create if it does not exist or open existing deFile_Open_CreateAlways Always open the file, override if the file already exists
Returns: Return a pointer to an IdeFile class if valid Reimplemented from deFileSystem.

deBoolean deFSVirtual::OpenBaseFile | ( | IdeFile * | BaseFile,
|  | long | OpenFlags
| ) | `[virtual]`

| Implements IdeFSVirtual.

deBoolean deFSVirtual::OpenBaseFilename | ( | const char * | Filename,
|  | long | OpenFlags
| ) | `[virtual]`

| Implements IdeFSVirtual.

deFSVirtual::VirtualFileEntry * deFSVirtual::ParseDirectory | ( | const char * | Directory,
|  | deBoolean | FileAttached,
|  | long * | FileNameStart
| ) | `[private]`

long deFSVirtual::Read | ( | deFileVirtual * | FileEntry,
|  | void * | Buffer,
|  | long | Length
| ) | `[protected]`

deBoolean deFSVirtual::ReadDirectoryTree | ( |  | ) | `[private]`

deBoolean deFSVirtual::Rename | ( | const char * | OldFilename,
|  | const char * | NewFilename
| ) | `[virtual]`

  | Rename a file Parameters:
  in] | OldFilename Original file to rename
  in] | NewFilename New name for the file
Returns: True/False if the rename was successful Reimplemented from deFileSystem.

deBoolean deFSVirtual::SetDirectory | ( | const char * | Directory | ) | `[virtual]`

| Set the current directory. Reimplemented from deFileSystem.

long deFSVirtual::Write | ( | deFileVirtual * | FileEntry,
|  | void * | Buffer,
|  | long | Length
| ) | `[protected]`

deBoolean deFSVirtual::WriteDirectoryTree | ( |  | ) | `[private]`

## Friends And Related Function Documentation

friend class deFileVirtual`[friend]`

## Member Data Documentation

IdeFile* deFSVirtual::BaseFile`[private]`

deBoolean deFSVirtual::BaseFileOwner`[private]`

long deFSVirtual::BaseFlags`[private]`

IdeFSReal* deFSVirtual::BaseFS`[private]`

char* deFSVirtual::CurDirectoryName`[private]`

VirtualFileEntry* deFSVirtual::CurrentDirectory`[private]`

VirtualFileEntry* deFSVirtual::RootDirectory`[private]`

The documentation for this class was generated from the following files:

- deFileSystem_priv.hpp
- deFSVirtual.cpp