22 #ifndef COMMON_CLICKTEAM_H 23 #define COMMON_CLICKTEAM_H 25 #include "common/archive.h" 26 #include "common/fs.h" 27 #include "common/ptr.h" 28 #include "common/stream.h" 29 #include "common/hashmap.h" 30 #include "common/hash-str.h" 35 enum class ClickteamTagId : uint16 {
36 BANNER_IMAGE = 0x1235,
40 FILE_PATCHING_LIST = 0x1242,
45 ClickteamTag(uint16 tagId, byte *contents, uint32 size) : _tagId(tagId), _contents(contents), _size(size) {
71 struct ClickteamPatchDescriptor {
74 uint32 _patchDataOffset;
77 class ClickteamFileDescriptor {
82 uint32 _fileDataOffset;
84 uint32 _fileDescriptorOffset;
85 uint32 _compressedSize;
86 uint32 _uncompressedSize;
91 bool _isReferenceMissing;
95 ClickteamFileDescriptor(
const ClickteamTag& contentsTag, uint32 off);
99 ClickteamFileDescriptor() : _fileDataOffset(0), _fileDescriptorOffset(0), _compressedSize(0), _uncompressedSize(0) {}
106 DisposeAfterUse::Flag dispose)
107 : _files(files), _tags(tags), _crcXor(crcXor), _block3Offset(block3Offset), _stream(stream, dispose),
108 _reference(reference) {
112 uint32 crcXor,
bool doWarn);
116 uint32 _crcXor, _block3Offset;
const ArchiveMemberPtr getMember(const Common::Path &path) const override
Definition: clickteam.h:43
Definition: archive.h:141
Definition: noncopyable.h:39
int listMembers(Common::ArchiveMemberList &) const override
bool hasFile(const Common::Path &path) const override
#define SearchMan
Definition: archive.h:476
Definition: clickteam.h:33
Definition: algorithm.h:29
Definition: archive.h:224
Definition: archive.h:269