Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | Related Pages

FileManager Class Reference

#include <filemanager.h>

Collaboration diagram for FileManager:

Collaboration graph
[legend]
List of all members.

Detailed Description

Package and file manager.

Author:
Mattias Jansson (mattias@realityrift.com)


Public Member Functions

 FileManager (const std::string &rstrName)
virtual ~FileManager ()
bool AddPackage (const std::string &rstrPackage)
FileGetByName (const std::string &rstrName)
DirectoryGetRoot ()
void Clear ()
bool HasChanged ()
void PrintHierarchy (int iDepth=0)

Static Public Member Functions

bool LoadCodec (int iFileFlag, const std::string &rstrName)
FileCodecFindCodec (int iFileFlag)

Protected Attributes

std::string m_strName
Directorym_pkRoot
bool m_bChanged

Static Protected Attributes

int s_iFileManagers


Constructor & Destructor Documentation

FileManager const std::string &  rstrName  ) 
 

Parameters:
rstrName Name of file manager

virtual ~FileManager  )  [virtual]
 


Member Function Documentation

bool LoadCodec int  iFileFlag,
const std::string &  rstrName
[static]
 

Register new file type loader (codec)

Parameters:
iFileFlag File flag this codec parses
rstrName Codec name
Returns:
true if successful, false otherwise

FileCodec* FindCodec int  iFileFlag  )  [static]
 

Find matching codec

Parameters:
iFileFlag File flag
Returns:
Ptr to codec object, null if no match

bool AddPackage const std::string &  rstrPackage  ) 
 

Add a resource package

Parameters:
rstrPackage Package name
Returns:
false if error loading/parsing package data, true if successful

File* GetByName const std::string &  rstrName  ) 
 

Search for file

Parameters:
rstrName File name
Returns:
Pointer to file object (not opened!) if found, null ptr if not found

Directory* GetRoot  )  [inline]
 

Returns:
Root directory

void Clear  ) 
 

Clear file hierarchy

bool HasChanged  ) 
 

Query if hierarchy has changed since last call to HasChanged

Returns:
true if hierarchy has changed, false if not

void PrintHierarchy int  iDepth = 0  ) 
 

Print hierarchy

Parameters:
iDepth Current recurse depth


Member Data Documentation

int s_iFileManagers [static, protected]
 

File manager counter

std::string m_strName [protected]
 

Name

Directory* m_pkRoot [protected]
 

Root directory

bool m_bChanged [protected]
 

Change flag


The documentation for this class was generated from the following file:
Generated on Wed Jan 21 14:21:11 2004 for NeoEngine by doxygen 1.3.5