A specialization of Ogre::Archive which gets its data through Meru's ResourceManager, and therefore indirectly via the web.
More...
Public Member Functions |
| CDNArchive (CDNArchiveFactory *owner, const Ogre::String &name, const Ogre::String &archType) |
| ~CDNArchive () |
bool | isCaseSensitive () const |
void | load () |
void | unload () |
Ogre::DataStreamPtr | open (const Ogre::String &filename) const |
Ogre::DataStreamPtr | open (const Ogre::String &filename, bool readonly=true) const |
Ogre::StringVectorPtr | list (bool recursive=true, bool dirs=false) |
Ogre::FileInfoListPtr | listFileInfo (bool recursive=true, bool dirs=false) |
Ogre::StringVectorPtr | find (const Ogre::String &pattern, bool recursive=true, bool dirs=false) |
bool | exists (const Ogre::String &filename) |
Ogre::FileInfoListPtr | findFileInfo (const Ogre::String &pattern, bool recursive=true, bool dirs=false) |
Static Public Member Functions |
static String | canonicalizeHash (const String &filename) |
| This function takes a hash-based URI or filename and extracts the salient bits--- i.e.
|
Private Member Functions |
time_t | getModifiedTime (const Ogre::String &) |
Private Attributes |
unsigned int | mNativeFileArchive |
CDNArchiveFactory * | mOwner |
A specialization of Ogre::Archive which gets its data through Meru's ResourceManager, and therefore indirectly via the web.
See Ogre's documentation for details on the interface.
std::string Sirikata::Graphics::CDNArchive::canonicalizeHash |
( |
const String & |
filename | ) |
[static] |
This function takes a hash-based URI or filename and extracts the salient bits--- i.e.
everything past the hint about where to get the hash based filename i.e. mhash://meru/1bf00deadbeef turns into 1bf00deadbeef This function also strips quotes as well as a preceeding %_%% (CDN_REPLACING_MATERIAL_STREAM_HINT)
References CDN_REPLACING_MATERIAL_STREAM_HINT, and Sirikata::SHA256::hex_size.
Referenced by exists(), and open().