Use COutputStream::Put

Former-commit-id: a02037e266
This commit is contained in:
Henrique Gemignani Passos Lima
2022-10-11 21:35:41 +03:00
parent 9a4d5ae6bc
commit 7ec4707661
7 changed files with 27 additions and 24 deletions

View File

@@ -4,10 +4,9 @@
#include "types.h"
class COutputStream;
template < typename T >
void coutput_stream_helper(const T& t, COutputStream& out) {
t.PutTo(out);
}
void coutput_stream_helper(const T& t, COutputStream& out);
class COutputStream {
void DoPut(const void* ptr, size_t len);
@@ -57,6 +56,11 @@ private:
uchar mScratch[96];
};
template < typename T >
inline void coutput_stream_helper(const T& t, COutputStream& out) {
t.PutTo(out);
}
template <>
inline void coutput_stream_helper(const float& t, COutputStream& out) {
int tmp = *(int*)&t;

View File

@@ -44,7 +44,7 @@ struct SSaveHeader {
explicit SSaveHeader(int);
explicit SSaveHeader(CMemoryInStream& in);
void DoPut(CMemoryStreamOut& out) const;
void PutTo(COutputStream& out) const;
};
struct SGameFileSlot {
@@ -56,7 +56,7 @@ struct SGameFileSlot {
void InitializeFromGameState();
void LoadGameState(int idx);
void DoPut(CMemoryStreamOut& w) const;
void PutTo(COutputStream& w) const;
};
CHECK_SIZEOF(SGameFileSlot, 0x3d8)

View File

@@ -15,14 +15,13 @@
#include "rstl/reserved_vector.hpp"
#include "rstl/vector.hpp"
class CMemoryStreamOut;
class CGameState {
public:
CGameState();
CGameState(CInputStream& in, int saveIdx);
void ReadSystemOptions(CInputStream& in);
void PutTo(CMemoryStreamOut& out);
void PutTo(COutputStream& out) const;
void WriteSystemOptions(COutputStream& out);
rstl::rc_ptr< CPlayerState >& PlayerState();

View File

@@ -14,7 +14,7 @@ public:
CSystemOptions();
explicit CSystemOptions(CInputStream&);
~CSystemOptions();
void PutTo(COutputStream&);
void PutTo(COutputStream&) const;
void SetHasFusion(bool v);
bool GetHasFusion() const { return xd0_28_fusionSuitActive; }