22#ifndef BLADERUNNER_SAVEFILE_H
23#define BLADERUNNER_SAVEFILE_H
25#include "common/array.h"
26#include "common/memstream.h"
27#include "common/savefile.h"
28#include "common/types.h"
30#include "graphics/surface.h"
32#include "engines/savestate.h"
40namespace BladeRunner {
61 static const uint32 kTag =
MKTAG(
'B',
'R',
'S',
'V');
64 static const uint32 kVersion = 4;
71 static const uint32 kNameLengthV2 = 32;
72 static const uint32 kNameLength = 41;
73 static const uint32 kThumbnailSize = 9600;
95 uint32
write(
const void *dataPtr, uint32 dataSize)
override {
return _s.write(dataPtr, dataSize); }
96 bool flush()
override {
return _s.flush(); }
97 int64
pos()
const override {
return _s.pos(); }
101 void padBytes(
int count);
103 void writeInt(int32 v);
104 void writeFloat(
float v);
105 void writeBool(
bool v);
107 void writeVector2(
const Vector2 &v);
108 void writeVector3(
const Vector3 &v);
110 void writeBoundingBox(
const BoundingBox &v,
bool serialized);
120 bool eos()
const override {
return _s.eos(); }
121 uint32
read(
void *dataPtr, uint32 dataSize)
override {
return _s.read(dataPtr, dataSize); }
122 int64
pos()
const override {
return _s.pos(); }
123 int64
size()
const override {
return _s.size(); }
124 bool seek(int64 offset,
int whence = SEEK_SET)
override {
return _s.seek(offset, whence); }
Definition: boundingbox.h:31
Definition: savefile.h:59
Definition: savefile.h:113
uint32 read(void *dataPtr, uint32 dataSize) override
Definition: savefile.h:121
int64 pos() const override
Definition: savefile.h:122
bool seek(int64 offset, int whence=SEEK_SET) override
Definition: savefile.h:124
int64 size() const override
Definition: savefile.h:123
bool eos() const override
Definition: savefile.h:120
Definition: savefile.h:88
bool flush() override
Definition: savefile.h:96
int64 pos() const override
Definition: savefile.h:97
uint32 write(const void *dataPtr, uint32 dataSize) override
Definition: savefile.h:95
Definition: savefile.h:54
Definition: savestate.h:56
#define MKTAG(a0, a1, a2, a3)
Definition: endian.h:188
bool skipThumbnail(Common::SeekableReadStream &in)
Definition: algorithm.h:29