28 #ifndef WINTERMUTE_BASE_PERSISTENCE_MANAGER_H 29 #define WINTERMUTE_BASE_PERSISTENCE_MANAGER_H 32 #include "engines/wintermute/dctypes.h" 33 #include "engines/wintermute/base/gfx/xmath.h" 34 #include "engines/savestate.h" 35 #include "common/stream.h" 36 #include "common/str.h" 37 #include "common/system.h" 38 #include "common/rect.h" 44 template<
int rows,
int cols>
class Matrix;
45 typedef Matrix<4, 4> Matrix4;
46 typedef Matrix<3, 1> Vector3d;
57 char *_savedDescription;
62 void putDWORD(uint32 val);
65 void putString(
const char *val);
67 void putFloat(
float val);
69 void putDouble(
double val);
72 bool deleteSaveSlot(
int slot);
73 uint32 getMaxUsedSlot();
74 bool getSaveExists(
int slot);
77 bool getBytes(byte *buffer, uint32 size);
78 bool putBytes(byte *buffer, uint32 size);
81 bool getIsSaving() {
return _saving; }
82 TimeDate getSavedTimestamp() {
return _savedTimestamp; }
84 uint32 _richBufferSize;
87 bool transferPtr(
const char *name,
void *val);
88 bool transferSint32(
const char *name, int32 *val);
89 bool transferUint32(
const char *name, uint32 *val);
90 bool transferFloat(
const char *name,
float *val);
91 bool transferDouble(
const char *name,
double *val);
92 bool transferBool(
const char *name,
bool *val);
93 bool transferByte(
const char *name, byte *val);
96 bool transferConstChar(
const char *name,
const char **val);
97 bool transferCharPtr(
const char *name,
char **val);
99 bool transferVector2(
const char *name,
Vector2 *val);
100 bool transferVector3d(
const char *name,
DXVector3 *val);
101 bool transferVector4d(
const char *name,
DXVector4 *val);
102 bool transferMatrix4(
const char *name,
DXMatrix *val);
105 bool checkVersion(byte verMajor, byte verMinor, byte verBuild);
107 uint32 _thumbnailDataSize;
108 byte *_thumbnailData;
109 uint32 _scummVMThumbSize;
110 byte *_scummVMThumbnailData;
113 bool _deleteSingleton;
116 bool putTimeDate(
const TimeDate &t);
120 uint32 _savedPlayTime;
Definition: base_game.h:75
Definition: base_persistence_manager.h:55
Definition: savestate.h:56
Definition: achievements_tables.h:27