Ogre::FileSystemArchive Class Reference

Specialisation of the Archive class to allow reading of files from filesystem folders / directories. More...

#include <OgreFileSystem.h>

Inheritance diagram for Ogre::FileSystemArchive:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 FileSystemArchive (const String &name, const String &archType)
 ~FileSystemArchive ()
bool isCaseSensitive (void) const
 Returns whether this archive is case sensitive in the way it matches files.
void load ()
 Loads the archive.

Remarks:
This initializes all the internal data of the class.
Warning:
Do not call this function directly, it is meant to be used only by the ArchiveManager class.

void unload ()
 Unloads the archive.

Warning:
Do not call this function directly, it is meant to be used only by the ArchiveManager class.

DataStreamPtr open (const String &filename) const
 Open a stream on a given file.

Note:
There is no equivalent 'close' method; the returned stream controls the lifecycle of this file operation.
Parameters:
filename The fully qualified name of the file
Returns:
A shared pointer to a DataStream which can be used to read / write the file. If the file is not present, returns a null shared pointer.

StringVectorPtr list (bool recursive=true, bool dirs=false)
 List all file names in the archive.

Note:
This method only returns filenames, you can also retrieve other information using listFileInfo.
Parameters:
recursive Whether all paths of the archive are searched (if the archive has a concept of that)
dirs Set to true if you want the directories to be listed instead of files
Returns:
A list of filenames matching the criteria, all are fully qualified

FileInfoListPtr listFileInfo (bool recursive=true, bool dirs=false)
 List all files in the archive with accompanying information.

Parameters:
recursive Whether all paths of the archive are searched (if the archive has a concept of that)
dirs Set to true if you want the directories to be listed instead of files
Returns:
A list of structures detailing quite a lot of information about all the files in the archive.

StringVectorPtr find (const String &pattern, bool recursive=true, bool dirs=false)
 Find all file or directory names matching a given pattern in this archive.

Note:
This method only returns filenames, you can also retrieve other information using findFileInfo.
Parameters:
pattern The pattern to search for; wildcards (*) are allowed
recursive Whether all paths of the archive are searched (if the archive has a concept of that)
dirs Set to true if you want the directories to be listed instead of files
Returns:
A list of filenames matching the criteria, all are fully qualified

FileInfoListPtr findFileInfo (const String &pattern, bool recursive=true, bool dirs=false)
 Find all files or directories matching a given pattern in this archive and get some detailed information about them.

Parameters:
pattern The pattern to search for; wildcards (*) are allowed
recursive Whether all paths of the archive are searched (if the archive has a concept of that)
dirs Set to true if you want the directories to be listed instead of files
Returns:
A list of file information structures for all files matching the criteria.

bool exists (const String &filename)
 Find out if the named file exists (note: fully qualified filename required).
time_t getModifiedTime (const String &filename)
 Retrieve the modification time of a given file.
const StringgetName (void) const
 Get the name of this archive.
const StringgetType (void) const
 Return the type code of this Archive.
void * operator new (size_t sz, const char *file, int line, const char *func)
 operator new, with debug line info
void * operator new (size_t sz)
void * operator new (size_t sz, void *ptr)
 placement operator new
void * operator new[] (size_t sz, const char *file, int line, const char *func)
 array operator new, with debug line info
void * operator new[] (size_t sz)
void operator delete (void *ptr)
void operator delete (void *ptr, void *)
void operator delete (void *ptr, const char *, int, const char *)
void operator delete[] (void *ptr)
void operator delete[] (void *ptr, const char *, int, const char *)

Static Public Member Functions

static void setIgnoreHidden (bool ignore)
 Set whether filesystem enumeration will include hidden files or not.
static bool getIgnoreHidden ()
 Get whether hidden files are ignored during filesystem enumeration.

Static Public Attributes

static bool ms_IgnoreHidden

Protected Member Functions

void findFiles (const String &pattern, bool recursive, bool dirs, StringVector *simpleList, FileInfoList *detailList)
 Utility method to retrieve all files in a directory matching pattern.

Protected Attributes

String mName
 Archive name.
String mType
 Archive type code.


Detailed Description

Specialisation of the Archive class to allow reading of files from filesystem folders / directories.

Definition at line 42 of file OgreFileSystem.h.


Constructor & Destructor Documentation

Ogre::FileSystemArchive::FileSystemArchive ( const String name,
const String archType 
)

Ogre::FileSystemArchive::~FileSystemArchive (  ) 


Member Function Documentation

void Ogre::FileSystemArchive::findFiles ( const String pattern,
bool  recursive,
bool  dirs,
StringVector simpleList,
FileInfoList detailList 
) [protected]

Utility method to retrieve all files in a directory matching pattern.

Parameters:
pattern File pattern
recursive Whether to cascade down directories
dirs Set to true if you want the directories to be listed instead of files
simpleList Populated if retrieving a simple list
detailList Populated if retrieving a detailed list
currentDir The current directory relative to the base of the archive, for file naming

bool Ogre::FileSystemArchive::isCaseSensitive ( void   )  const [virtual]

Returns whether this archive is case sensitive in the way it matches files.

Implements Ogre::Archive.

void Ogre::FileSystemArchive::load (  )  [virtual]

Loads the archive.

Remarks:
This initializes all the internal data of the class.
Warning:
Do not call this function directly, it is meant to be used only by the ArchiveManager class.

Implements Ogre::Archive.

void Ogre::FileSystemArchive::unload (  )  [virtual]

Unloads the archive.

Warning:
Do not call this function directly, it is meant to be used only by the ArchiveManager class.

Implements Ogre::Archive.

DataStreamPtr Ogre::FileSystemArchive::open ( const String filename  )  const [virtual]

Open a stream on a given file.

Note:
There is no equivalent 'close' method; the returned stream controls the lifecycle of this file operation.
Parameters:
filename The fully qualified name of the file
Returns:
A shared pointer to a DataStream which can be used to read / write the file. If the file is not present, returns a null shared pointer.

Implements Ogre::Archive.

StringVectorPtr Ogre::FileSystemArchive::list ( bool  recursive = true,
bool  dirs = false 
) [virtual]

List all file names in the archive.

Note:
This method only returns filenames, you can also retrieve other information using listFileInfo.
Parameters:
recursive Whether all paths of the archive are searched (if the archive has a concept of that)
dirs Set to true if you want the directories to be listed instead of files
Returns:
A list of filenames matching the criteria, all are fully qualified

Implements Ogre::Archive.

FileInfoListPtr Ogre::FileSystemArchive::listFileInfo ( bool  recursive = true,
bool  dirs = false 
) [virtual]

List all files in the archive with accompanying information.

Parameters:
recursive Whether all paths of the archive are searched (if the archive has a concept of that)
dirs Set to true if you want the directories to be listed instead of files
Returns:
A list of structures detailing quite a lot of information about all the files in the archive.

Implements Ogre::Archive.

StringVectorPtr Ogre::FileSystemArchive::find ( const String pattern,
bool  recursive = true,
bool  dirs = false 
) [virtual]

Find all file or directory names matching a given pattern in this archive.

Note:
This method only returns filenames, you can also retrieve other information using findFileInfo.
Parameters:
pattern The pattern to search for; wildcards (*) are allowed
recursive Whether all paths of the archive are searched (if the archive has a concept of that)
dirs Set to true if you want the directories to be listed instead of files
Returns:
A list of filenames matching the criteria, all are fully qualified

Implements Ogre::Archive.

FileInfoListPtr Ogre::FileSystemArchive::findFileInfo ( const String pattern,
bool  recursive = true,
bool  dirs = false 
) [virtual]

Find all files or directories matching a given pattern in this archive and get some detailed information about them.

Parameters:
pattern The pattern to search for; wildcards (*) are allowed
recursive Whether all paths of the archive are searched (if the archive has a concept of that)
dirs Set to true if you want the directories to be listed instead of files
Returns:
A list of file information structures for all files matching the criteria.

Implements Ogre::Archive.

bool Ogre::FileSystemArchive::exists ( const String filename  )  [virtual]

Find out if the named file exists (note: fully qualified filename required).

Implements Ogre::Archive.

time_t Ogre::FileSystemArchive::getModifiedTime ( const String filename  )  [virtual]

Retrieve the modification time of a given file.

Implements Ogre::Archive.

static void Ogre::FileSystemArchive::setIgnoreHidden ( bool  ignore  )  [static]

Set whether filesystem enumeration will include hidden files or not.

This should be called prior to declaring and/or initializing filesystem resource locations. The default is true (ignore hidden files).

Definition at line 96 of file OgreFileSystem.h.

static bool Ogre::FileSystemArchive::getIgnoreHidden (  )  [static]

Get whether hidden files are ignored during filesystem enumeration.

Definition at line 102 of file OgreFileSystem.h.

const String& Ogre::Archive::getName ( void   )  const [inherited]

Get the name of this archive.

Definition at line 101 of file OgreArchive.h.

const String& Ogre::Archive::getType ( void   )  const [inherited]

Return the type code of this Archive.

Definition at line 191 of file OgreArchive.h.

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
const char *  file,
int  line,
const char *  func 
) [inherited]

operator new, with debug line info

Definition at line 62 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz  )  [inherited]

Definition at line 67 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new ( size_t  sz,
void *  ptr 
) [inherited]

placement operator new

Definition at line 73 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz,
const char *  file,
int  line,
const char *  func 
) [inherited]

array operator new, with debug line info

Definition at line 79 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void* Ogre::AllocatedObject< Alloc >::operator new[] ( size_t  sz  )  [inherited]

Definition at line 84 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr  )  [inherited]

Definition at line 89 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
void *   
) [inherited]

Definition at line 95 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete ( void *  ptr,
const char *  ,
int  ,
const char *   
) [inherited]

Definition at line 101 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr  )  [inherited]

Definition at line 106 of file OgreMemoryAllocatedObject.h.

template<class Alloc>
void Ogre::AllocatedObject< Alloc >::operator delete[] ( void *  ptr,
const char *  ,
int  ,
const char *   
) [inherited]

Definition at line 112 of file OgreMemoryAllocatedObject.h.


Member Data Documentation

Definition at line 107 of file OgreFileSystem.h.

String Ogre::Archive::mName [protected, inherited]

Archive name.

Definition at line 85 of file OgreArchive.h.

String Ogre::Archive::mType [protected, inherited]

Archive type code.

Definition at line 87 of file OgreArchive.h.


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

Copyright © 2008 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Sep 27 22:03:20 2009