ScummVM API documentation
Stark::Formats::XARCArchive Class Reference
Inheritance diagram for Stark::Formats::XARCArchive:
Common::Archive

Public Member Functions

bool open (const Common::Path &filename)
 
Common::Path getFilename () const
 
bool hasFile (const Common::Path &path) const
 
int listMatchingMembers (Common::ArchiveMemberList &list, const Common::Path &pattern, bool matchPathComponents=false) const
 
int listMembers (Common::ArchiveMemberList &list) const
 
const Common::ArchiveMemberPtr getMember (const Common::Path &path) const
 
Common::SeekableReadStreamcreateReadStreamForMember (const Common::Path &path) const
 
Common::SeekableReadStreamcreateReadStreamForMember (const XARCMember *member) const
 
- Public Member Functions inherited from Common::Archive
virtual bool isPathDirectory (const Path &path) const
 
virtual SeekableReadStreamcreateReadStreamForMemberAltStream (const Path &path, AltStreamType altStreamType) const
 
virtual SeekableReadStreamcreateReadStreamForMemberNext (const Path &path, const Archive *starting) const
 
Common::Error dumpArchive (const Path &destPath)
 
virtual char getPathSeparator () const
 

Member Function Documentation

◆ hasFile()

bool Stark::Formats::XARCArchive::hasFile ( const Common::Path path) const
virtual

Check if a member with the given name is present in the Archive. Patterns are not allowed, as this is meant to be a quick File::exists() replacement. This returns "true" for both files and directories.

Implements Common::Archive.

◆ listMatchingMembers()

int Stark::Formats::XARCArchive::listMatchingMembers ( Common::ArchiveMemberList list,
const Common::Path pattern,
bool  matchPathComponents = false 
) const
virtual

Add all members of the Archive matching the specified pattern to the list. Must only append to list, and not remove elements from it.

Parameters
matchPathComponentsif set, then whole string will be matched, otherwise (default), path separator ('/') does not match with wildcards
Returns
The number of members added to list.

Reimplemented from Common::Archive.

◆ listMembers()

int Stark::Formats::XARCArchive::listMembers ( Common::ArchiveMemberList list) const
virtual

Add all members of the Archive to the list. Must only append to list, and not remove elements from it.

Returns
The number of names added to list.

Implements Common::Archive.

◆ getMember()

const Common::ArchiveMemberPtr Stark::Formats::XARCArchive::getMember ( const Common::Path path) const
virtual

Return an ArchiveMember representation of the given file.

Implements Common::Archive.

◆ createReadStreamForMember()

Common::SeekableReadStream* Stark::Formats::XARCArchive::createReadStreamForMember ( const Common::Path path) const
virtual

Create a stream bound to a member with the specified name in the archive. If no member with this name exists, 0 is returned.

Returns
The newly created input stream.

Implements Common::Archive.


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