Torque2D Reference
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
ResManager Class Reference

#include <resourceManager.h>

Public Member Functions

RESOURCE_CREATE_FN getCreateFunction (const char *name)
 
 ~ResManager ()
 
void setFileNameEcho (bool on)
 Sets whether or not to echo filenames that have been accessed by means of openStream.
 
void setModPaths (U32 numPaths, const char **dirs)
 Sets the path for the current game mod.
 
const char * getModPaths ()
 Gets the path for the current game mod.
 
void addPath (const char *path, bool ignoreZips=false)
 Add a path.
 
void removePath (const char *path)
 Remove a path. Only removes resources that are not loaded.
 
void setMissingFileLogging (bool log)
 Should we log missing files?
 
bool getMissingFileList (Vector< char * > &list)
 Gets which files are missing.
 
void clearMissingFileList ()
 Clears the missing file list.
 
void registerExtension (const char *extension, RESOURCE_CREATE_FN create_fn)
 Tells the resource manager what to do with a resource that it loads.
 
S32 getSize (const char *filename)
 Gets the size of the file.
 
const char * getFullPath (const char *filename, char *path, U32 pathLen)
 Gets the full path of the file.
 
const char * getModPathOf (const char *fileName)
 Gets the path of the file local to the mod.
 
const char * getPathOf (const char *filename)
 Gets the path of the file from the base directory.
 
const char * getBasePath ()
 Gets the base path.
 
ResourceObjectload (const char *fileName, bool computeCRC=false)
 loads an instance of an object
 
StreamopenStream (const char *fileName)
 Opens a stream for an object.
 
StreamopenStream (ResourceObject *object)
 Opens a stream for an object.
 
void closeStream (Stream *stream)
 Closes the stream.
 
void unlock (ResourceObject *)
 
bool add (const char *name, ResourceInstance *addInstance, bool extraLock=false)
 Add a new resource instance.
 
ResourceObjectfind (const char *fileName)
 Searches the hash list for the filename and returns it's object if found, otherwise NULL.
 
ResourceInstanceloadInstance (const char *fileName, bool computeCRC=false)
 Loads a new instance of an object by means of a filename.
 
ResourceInstanceloadInstance (ResourceObject *object, bool computeCRC=false)
 Loads a new instance of an object by means of a resource object.
 
ResourceObjectfind (const char *fileName, U32 flags)
 Searches the hash list for the filename and returns it's object if found, otherwise NULL.
 
ResourceObjectfindMatch (const char *expression, const char **fn, ResourceObject *start=NULL)
 Finds a resource object with given expression.
 
ResourceObjectfindMatchMultiExprs (const char *multiExpression, const char **fn, ResourceObject *start=NULL)
 Finds a resource object with given expressions, seperated by " ".
 
void purge ()
 Goes through the timeoutList and deletes it all. BURN!!!
 
void purge (ResourceObject *obj)
 Deletes one resource object.
 
void freeResource (ResourceObject *resObject)
 Frees a resource!
 
void serialize (VectorPtr< const char * > &filenames)
 Sorts the resource objects.
 
S32 findMatches (FindMatch *pFM)
 Finds multiple matches to an expression.
 
bool findFile (const char *name)
 Checks to see if a file exists.
 
bool addVFSRoot (Zip::ZipArchive *vfs)
 
bool isUsingVFS ()
 
bool getCrc (const char *fileName, U32 &crcVal, const U32 crcInitialVal=INITIAL_CRC_VALUE)
 
void setWriteablePath (const char *path)
 Sets the writable path for a file to the one given.
 
bool isValidWriteFileName (const char *fn)
 Checks to see if the given path is valid for writing.
 
bool openFileForWrite (FileStream &fs, const char *fileName, U32 accessMode=File::Write)
 Opens a file for writing!
 
void dumpResources (const bool onlyLoaded=true)
 Dumps all loaded resources to the console.
 

Global Control

These are called to initialize/destroy the resource manager at runtime.

static void create ()
 
static void destroy ()
 
static void initExcludedDirectories ()
 

Detailed Description

A virtual file system for the storage and retrieval of ResourceObjects.

Basic resource manager behavior:

All classes which wish to be handled by the resource manager need:

  1. To be derived from ResourceInstance.
  2. To register a creation function and file extension with the manager.

Constructor & Destructor Documentation

◆ ~ResManager()

~ResManager ( )

Member Function Documentation

◆ add()

bool add ( const char *  name,
ResourceInstance addInstance,
bool  extraLock = false 
)

Add a new resource instance.

◆ addPath()

void addPath ( const char *  path,
bool  ignoreZips = false 
)

Add a path.

◆ addVFSRoot()

bool addVFSRoot ( Zip::ZipArchive vfs)

◆ clearMissingFileList()

void clearMissingFileList ( )

Clears the missing file list.

◆ closeStream()

void closeStream ( Stream stream)

Closes the stream.

◆ create()

void create ( )
static

◆ destroy()

void destroy ( )
static

◆ dumpResources()

void dumpResources ( const bool  onlyLoaded = true)

Dumps all loaded resources to the console.

◆ find() [1/2]

ResourceObject * find ( const char *  fileName)

Searches the hash list for the filename and returns it's object if found, otherwise NULL.

◆ find() [2/2]

ResourceObject * find ( const char *  fileName,
U32  flags 
)

Searches the hash list for the filename and returns it's object if found, otherwise NULL.

◆ findFile()

bool findFile ( const char *  name)

Checks to see if a file exists.

◆ findMatch()

ResourceObject * findMatch ( const char *  expression,
const char **  fn,
ResourceObject start = NULL 
)

Finds a resource object with given expression.

◆ findMatches()

S32 findMatches ( FindMatch pFM)

Finds multiple matches to an expression.

◆ findMatchMultiExprs()

ResourceObject * findMatchMultiExprs ( const char *  multiExpression,
const char **  fn,
ResourceObject start = NULL 
)

Finds a resource object with given expressions, seperated by " ".

◆ freeResource()

void freeResource ( ResourceObject resObject)

Frees a resource!

◆ getBasePath()

const char * getBasePath ( )

Gets the base path.

◆ getCrc()

bool getCrc ( const char *  fileName,
U32 &  crcVal,
const U32  crcInitialVal = INITIAL_CRC_VALUE 
)

Computes the CRC of a file.

By passing a different crcInitialVal, you can take the CRC of multiple files.

◆ getCreateFunction()

RESOURCE_CREATE_FN getCreateFunction ( const char *  name)

◆ getFullPath()

const char * getFullPath ( const char *  filename,
char *  path,
U32  pathLen 
)

Gets the full path of the file.

◆ getMissingFileList()

bool getMissingFileList ( Vector< char * > &  list)

Gets which files are missing.

◆ getModPathOf()

const char * getModPathOf ( const char *  fileName)

Gets the path of the file local to the mod.

◆ getModPaths()

const char * getModPaths ( )

Gets the path for the current game mod.

◆ getPathOf()

const char * getPathOf ( const char *  filename)

Gets the path of the file from the base directory.

◆ getSize()

S32 getSize ( const char *  filename)

Gets the size of the file.

◆ initExcludedDirectories()

void initExcludedDirectories ( )
static

Load the excluded directories from the resource manager pref and stuff it into the platform layer.

◆ isUsingVFS()

bool isUsingVFS ( )
inline

◆ isValidWriteFileName()

bool isValidWriteFileName ( const char *  fn)

Checks to see if the given path is valid for writing.

◆ load()

ResourceObject * load ( const char *  fileName,
bool  computeCRC = false 
)

loads an instance of an object

◆ loadInstance() [1/2]

ResourceInstance * loadInstance ( const char *  fileName,
bool  computeCRC = false 
)

Loads a new instance of an object by means of a filename.

◆ loadInstance() [2/2]

ResourceInstance * loadInstance ( ResourceObject object,
bool  computeCRC = false 
)

Loads a new instance of an object by means of a resource object.

◆ openFileForWrite()

bool openFileForWrite ( FileStream fs,
const char *  fileName,
U32  accessMode = File::Write 
)

Opens a file for writing!

◆ openStream() [1/2]

Stream * openStream ( const char *  fileName)

Opens a stream for an object.

◆ openStream() [2/2]

Stream * openStream ( ResourceObject object)

Opens a stream for an object.

◆ purge() [1/2]

void purge ( )

Goes through the timeoutList and deletes it all. BURN!!!

◆ purge() [2/2]

void purge ( ResourceObject obj)

Deletes one resource object.

◆ registerExtension()

void registerExtension ( const char *  extension,
RESOURCE_CREATE_FN  create_fn 
)

Tells the resource manager what to do with a resource that it loads.

◆ removePath()

void removePath ( const char *  path)

Remove a path. Only removes resources that are not loaded.

◆ serialize()

void serialize ( VectorPtr< const char * > &  filenames)

Sorts the resource objects.

◆ setFileNameEcho()

void setFileNameEcho ( bool  on)

Sets whether or not to echo filenames that have been accessed by means of openStream.

◆ setMissingFileLogging()

void setMissingFileLogging ( bool  log)

Should we log missing files?

◆ setModPaths()

void setModPaths ( U32  numPaths,
const char **  dirs 
)

Sets the path for the current game mod.

◆ setWriteablePath()

void setWriteablePath ( const char *  path)

Sets the writable path for a file to the one given.

◆ unlock()

void unlock ( ResourceObject obj)

Decrements the lock count of an object. If the lock count is zero post-decrement, the object is added to the timeoutList for deletion upon call of flush.


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