ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

#include <stuffit.h>

Inheritance diagram for Grim::StuffItArchive:
Collaboration diagram for Grim::StuffItArchive:

List of all members.

Classes

struct  FileEntry

Public Member Functions

 StuffItArchive ()
 ~StuffItArchive ()
bool open (const Common::String &filename)
void close ()
bool isOpen () const
bool hasFile (const Common::String &name) const override
 Check if a member with the given name is present in the Archive.
int listMembers (Common::ArchiveMemberList &list) const override
 Add all members of the Archive to list.
const Common::ArchiveMemberPtr getMember (const Common::String &name) const override
 Returns a ArchiveMember representation of the given file.
Common::SeekableReadStreamcreateReadStreamForMember (const Common::String &name) const override
 Create a stream bound to a member with the specified name in the archive.

Private Types

typedef Common::HashMap
< Common::String, FileEntry,
Common::IgnoreCase_Hash,
Common::IgnoreCase_EqualTo
FileMap

Private Member Functions

Common::SeekableReadStreamdecompress14 (Common::SeekableReadStream *src, uint32 uncompressedSize) const
void update14 (uint16 first, uint16 last, byte *code, uint16 *freq) const
void readTree14 (Common::BitStream8LSB *bits, SIT14Data *dat, uint16 codesize, uint16 *result) const

Private Attributes

Common::SeekableReadStream_stream
FileMap _map

Detailed Description

Definition at line 39 of file stuffit.h.


Member Typedef Documentation


Constructor & Destructor Documentation

Grim::StuffItArchive::StuffItArchive (  ) 

Definition at line 34 of file stuffit.cpp.

Grim::StuffItArchive::~StuffItArchive (  ) 

Definition at line 38 of file stuffit.cpp.


Member Function Documentation

void Grim::StuffItArchive::close (  ) 

Definition at line 155 of file stuffit.cpp.

Common::SeekableReadStream * Grim::StuffItArchive::createReadStreamForMember ( const Common::String name  )  const [override, 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.

Definition at line 175 of file stuffit.cpp.

Common::SeekableReadStream * Grim::StuffItArchive::decompress14 ( Common::SeekableReadStream src,
uint32  uncompressedSize 
) const [private]

Definition at line 384 of file stuffit.cpp.

const Common::ArchiveMemberPtr Grim::StuffItArchive::getMember ( const Common::String name  )  const [override, virtual]

Returns a ArchiveMember representation of the given file.

Implements Common::Archive.

Definition at line 171 of file stuffit.cpp.

bool Grim::StuffItArchive::hasFile ( const Common::String name  )  const [override, 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.

Implements Common::Archive.

Definition at line 160 of file stuffit.cpp.

bool Grim::StuffItArchive::isOpen (  )  const [inline]

Definition at line 46 of file stuffit.h.

int Grim::StuffItArchive::listMembers ( Common::ArchiveMemberList list  )  const [override, virtual]

Add all members of the Archive to list.

Must only append to list, and not remove elements from it.

Returns:
the number of names added to list

Implements Common::Archive.

Definition at line 164 of file stuffit.cpp.

bool Grim::StuffItArchive::open ( const Common::String filename  ) 

Definition at line 50 of file stuffit.cpp.

void Grim::StuffItArchive::readTree14 ( Common::BitStream8LSB bits,
SIT14Data dat,
uint16  codesize,
uint16 result 
) const [private]

Definition at line 260 of file stuffit.cpp.

void Grim::StuffItArchive::update14 ( uint16  first,
uint16  last,
byte code,
uint16 freq 
) const [private]

Definition at line 197 of file stuffit.cpp.


Member Data Documentation

Definition at line 65 of file stuffit.h.

Definition at line 62 of file stuffit.h.


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


Generated on Sat Mar 23 2019 05:07:56 for ResidualVM by doxygen 1.7.1
curved edge   curved edge