Nebula
|
#include <archivebase.h>
Base class of file archives.
Subclasses of this class implemented support for specific archive formats, like zip.
Inherits Core::RefCounted.
Inherited by IO::ZipArchive.
Public Member Functions | |
ArchiveBase () | |
constructor | |
virtual | ~ArchiveBase () |
destructor | |
bool | Setup (const URI &archiveURI, const Util::String &rootPath) |
setup the archive from an URI (without file extension) | |
void | Discard () |
discard the archive | |
bool | IsValid () const |
return true if archive is valid | |
const URI & | GetURI () const |
get the URI of the archive | |
Util::Array< Util::String > | ListFiles (const Util::String &dirPathInArchive, const Util::String &pattern) const |
list all files in a directory in the archive | |
Util::Array< Util::String > | ListDirectories (const Util::String &dirPathInArchive, const Util::String &pattern) const |
list all subdirectories in a directory in the archive | |
URI | ConvertToArchiveURI (const URI &fileURI) const |
convert a "file:" URI into a archive-specific URI pointing into this archive | |
Util::String | ConvertToPathInArchive (const Util::String &absPath) const |
convert an absolute path to local path inside archive, returns empty string if absPath doesn't point into this archive | |
Public Member Functions inherited from Core::RefCounted | |
RefCounted () | |
constructor | |
int | GetRefCount () const |
get the current refcount | |
void | AddRef () |
increment refcount by one | |
void | Release () |
decrement refcount and destroy object if refcount is zero | |
bool | IsInstanceOf (const Rtti &rtti) const |
return true if this object is instance of given class | |
bool | IsInstanceOf (const Util::String &className) const |
return true if this object is instance of given class by string | |
bool | IsInstanceOf (const Util::FourCC &classFourCC) const |
return true if this object is instance of given class by fourcc | |
bool | IsA (const Rtti &rtti) const |
return true if this object is instance of given class, or a derived class | |
bool | IsA (const Util::String &rttiName) const |
return true if this object is instance of given class, or a derived class, by string | |
bool | IsA (const Util::FourCC &rttiFourCC) const |
return true if this object is instance of given class, or a derived class, by fourcc | |
const Util::String & | GetClassName () const |
get the class name | |
Util::FourCC | GetClassFourCC () const |
get the class FourCC code | |
Protected Attributes | |
bool | isValid |
URI | uri |
Private Member Functions | |
__DeclareClass (ArchiveBase) | |
Additional Inherited Members | |
Static Public Member Functions inherited from Core::RefCounted | |
static void | DumpRefCountingLeaks () |
dump refcounting leaks, call at end of application (NEBULA_DEBUG builds only!) | |
Protected Member Functions inherited from Core::RefCounted | |
virtual | ~RefCounted () |
destructor (called when refcount reaches zero) | |
IO::ArchiveBase::ArchiveBase | ( | ) |
constructor
|
virtual |
destructor
|
private |
String IO::ArchiveBase::ConvertToPathInArchive | ( | const Util::String & | absPath | ) | const |
convert an absolute path to local path inside archive, returns empty string if absPath doesn't point into this archive
This method should convert an absolute file system path into a local path in the archive suitable for ListFiles() and ListDirectories().
Override this method in a subclass!
void IO::ArchiveBase::Discard | ( | ) |
discard the archive
|
inline |
return true if archive is valid
Array< String > IO::ArchiveBase::ListDirectories | ( | const Util::String & | dirPathInArchive, |
const Util::String & | pattern ) const |
list all subdirectories in a directory in the archive
List all directories in an archive directory.
Override this method in a subclass!
Array< String > IO::ArchiveBase::ListFiles | ( | const Util::String & | dirPathInArchive, |
const Util::String & | pattern ) const |
list all files in a directory in the archive
List all files in an archive directory.
Override this method in a subclass!
bool IO::ArchiveBase::Setup | ( | const URI & | archiveFileURI, |
const Util::String & | rootPath ) |
|
protected |
|
protected |