GOB: Use SeekableReadStreamEndianWrapper

This commit is contained in:
Cameron Cawley 2022-11-11 18:05:55 +00:00 committed by Eugene Sandulenko
parent bca9a3e5b3
commit a1a95495d6
7 changed files with 29 additions and 29 deletions

View File

@ -58,7 +58,7 @@ ANIFile::ANIFile(GobEngine *vm, const Common::String &fileName,
Common::SeekableReadStream *ani = _vm->_dataIO->getFile(endianFileName);
if (ani) {
Common::SeekableSubReadStreamEndian sub(ani, 0, ani->size(), bigEndian, DisposeAfterUse::YES);
Common::SeekableReadStreamEndianWrapper sub(ani, bigEndian, DisposeAfterUse::YES);
// The big endian version pads a few fields to even size
_hasPadding = bigEndian;
@ -75,7 +75,7 @@ ANIFile::~ANIFile() {
delete *l;
}
void ANIFile::load(Common::SeekableSubReadStreamEndian &ani, const Common::String &fileName) {
void ANIFile::load(Common::SeekableReadStreamEndian &ani, const Common::String &fileName) {
ani.skip(2); // Unused
uint16 animationCount = ani.readUint16();
@ -112,7 +112,7 @@ void ANIFile::load(Common::SeekableSubReadStreamEndian &ani, const Common::Strin
}
void ANIFile::loadAnimation(Animation &animation, FrameArray &frames,
Common::SeekableSubReadStreamEndian &ani) {
Common::SeekableReadStreamEndian &ani) {
// Animation properties
@ -185,7 +185,7 @@ void ANIFile::loadAnimation(Animation &animation, FrameArray &frames,
}
}
void ANIFile::loadFrames(FrameArray &frames, Common::SeekableSubReadStreamEndian &ani) {
void ANIFile::loadFrames(FrameArray &frames, Common::SeekableReadStreamEndian &ani) {
uint32 curFrame = 0;
bool end = false;
@ -233,7 +233,7 @@ void ANIFile::loadFrames(FrameArray &frames, Common::SeekableSubReadStreamEndian
}
}
CMPFile *ANIFile::loadLayer(Common::SeekableSubReadStreamEndian &ani) {
CMPFile *ANIFile::loadLayer(Common::SeekableReadStreamEndian &ani) {
Common::String file = Util::setExtension(Util::readString(ani, 13), "");
if (_hasPadding)
ani.skip(1);

View File

@ -28,7 +28,7 @@
#include "common/list.h"
namespace Common {
class SeekableSubReadStreamEndian;
class SeekableReadStreamEndian;
}
namespace Gob {
@ -129,13 +129,13 @@ private:
// Loading helpers
void load(Common::SeekableSubReadStreamEndian &ani, const Common::String &fileName);
void load(Common::SeekableReadStreamEndian &ani, const Common::String &fileName);
CMPFile *loadLayer(Common::SeekableSubReadStreamEndian &ani);
CMPFile *loadLayer(Common::SeekableReadStreamEndian &ani);
void loadAnimation(Animation &animation, FrameArray &frames,
Common::SeekableSubReadStreamEndian &ani);
void loadFrames(FrameArray &frames, Common::SeekableSubReadStreamEndian &ani);
Common::SeekableReadStreamEndian &ani);
void loadFrames(FrameArray &frames, Common::SeekableReadStreamEndian &ani);
// Drawing helpers

View File

@ -150,7 +150,7 @@ void CMPFile::loadRXY(Common::SeekableReadStream &rxy) {
((_vm->getEndiannessMethod() == kEndiannessMethodSystem) &&
(_vm->getEndianness() == kEndiannessBE));
Common::SeekableSubReadStreamEndian sub(&rxy, 0, rxy.size(), bigEndian, DisposeAfterUse::NO);
Common::SeekableReadStreamEndianWrapper sub(&rxy, bigEndian, DisposeAfterUse::NO);
_coordinates = new RXYFile(sub);

View File

@ -59,7 +59,7 @@ DECFile::DECFile(GobEngine *vm, const Common::String &fileName,
Common::SeekableReadStream *ani = _vm->_dataIO->getFile(endianFileName);
if (ani) {
Common::SeekableSubReadStreamEndian sub(ani, 0, ani->size(), bigEndian, DisposeAfterUse::YES);
Common::SeekableReadStreamEndianWrapper sub(ani, bigEndian, DisposeAfterUse::YES);
// The big endian version pads a few fields to even size
_hasPadding = bigEndian;
@ -78,7 +78,7 @@ DECFile::~DECFile() {
delete *l;
}
void DECFile::load(Common::SeekableSubReadStreamEndian &dec, const Common::String &fileName) {
void DECFile::load(Common::SeekableReadStreamEndian &dec, const Common::String &fileName) {
dec.skip(2); // Unused
int16 backdropCount = dec.readUint16();
@ -110,7 +110,7 @@ void DECFile::load(Common::SeekableSubReadStreamEndian &dec, const Common::Strin
loadParts(dec);
}
void DECFile::loadBackdrop(Common::SeekableSubReadStreamEndian &dec) {
void DECFile::loadBackdrop(Common::SeekableReadStreamEndian &dec) {
// Interestingly, DEC files reference "FOO.LBM" instead of "FOO.CMP"
Common::String file = Util::setExtension(Util::readString(dec, 13), "");
if (_hasPadding)
@ -119,7 +119,7 @@ void DECFile::loadBackdrop(Common::SeekableSubReadStreamEndian &dec) {
_backdrop = new CMPFile(_vm, file, _width, _height, _bpp);
}
CMPFile *DECFile::loadLayer(Common::SeekableSubReadStreamEndian &dec) {
CMPFile *DECFile::loadLayer(Common::SeekableReadStreamEndian &dec) {
Common::String file = Util::setExtension(Util::readString(dec, 13), "");
if (_hasPadding)
dec.skip(1);
@ -127,7 +127,7 @@ CMPFile *DECFile::loadLayer(Common::SeekableSubReadStreamEndian &dec) {
return new CMPFile(_vm, file, _width, _height, _bpp);
}
void DECFile::loadParts(Common::SeekableSubReadStreamEndian &dec) {
void DECFile::loadParts(Common::SeekableReadStreamEndian &dec) {
dec.skip(13); // Name
if (_hasPadding)
dec.skip(1);
@ -143,7 +143,7 @@ void DECFile::loadParts(Common::SeekableSubReadStreamEndian &dec) {
loadPart(*p, dec);
}
void DECFile::loadPart(Part &part, Common::SeekableSubReadStreamEndian &dec) {
void DECFile::loadPart(Part &part, Common::SeekableReadStreamEndian &dec) {
part.layer = dec.readByte() - 1;
part.part = dec.readByte();

View File

@ -26,7 +26,7 @@
namespace Common {
class String;
class SeekableSubReadStreamEndian;
class SeekableReadStreamEndian;
}
namespace Gob {
@ -85,14 +85,14 @@ private:
PartArray _parts;
void load(Common::SeekableSubReadStreamEndian &dec, const Common::String &fileName);
void load(Common::SeekableReadStreamEndian &dec, const Common::String &fileName);
void loadBackdrop(Common::SeekableSubReadStreamEndian &dec);
void loadBackdrop(Common::SeekableReadStreamEndian &dec);
CMPFile *loadLayer(Common::SeekableSubReadStreamEndian &dec);
CMPFile *loadLayer(Common::SeekableReadStreamEndian &dec);
void loadParts(Common::SeekableSubReadStreamEndian &dec);
void loadPart(Part &part, Common::SeekableSubReadStreamEndian &dec);
void loadParts(Common::SeekableReadStreamEndian &dec);
void loadPart(Part &part, Common::SeekableReadStreamEndian &dec);
};
} // End of namespace Gob

View File

@ -27,12 +27,12 @@
namespace Gob {
RXYFile::RXYFile(Common::SeekableReadStream &rxy) : _width(0), _height(0) {
Common::SeekableSubReadStreamEndian sub(&rxy, 0, rxy.size(), false, DisposeAfterUse::NO);
Common::SeekableReadStreamEndianWrapper sub(&rxy, false, DisposeAfterUse::NO);
load(sub);
}
RXYFile::RXYFile(Common::SeekableSubReadStreamEndian &rxy) : _width(0), _height(0) {
RXYFile::RXYFile(Common::SeekableReadStreamEndian &rxy) : _width(0), _height(0) {
load(rxy);
}
@ -70,7 +70,7 @@ const RXYFile::Coordinates &RXYFile::operator[](uint i) const {
return _coords[i];
}
void RXYFile::load(Common::SeekableSubReadStreamEndian &rxy) {
void RXYFile::load(Common::SeekableReadStreamEndian &rxy) {
if (rxy.size() < 2)
return;

View File

@ -27,7 +27,7 @@
namespace Common {
class SeekableReadStream;
class SeekableSubReadStreamEndian;
class SeekableReadStreamEndian;
}
namespace Gob {
@ -46,7 +46,7 @@ public:
};
RXYFile(Common::SeekableReadStream &rxy);
RXYFile(Common::SeekableSubReadStreamEndian &rxy);
RXYFile(Common::SeekableReadStreamEndian &rxy);
RXYFile(uint16 width, uint16 height);
~RXYFile();
@ -72,7 +72,7 @@ private:
uint16 _height;
void load(Common::SeekableSubReadStreamEndian &rxy);
void load(Common::SeekableReadStreamEndian &rxy);
};
} // End of namespace Gob