Jolt Physics
A multi core friendly Game Physics Engine
Loading...
Searching...
No Matches
StateRecorderImpl.h
Go to the documentation of this file.
1// Jolt Physics Library (https://github.com/jrouwe/JoltPhysics)
2// SPDX-FileCopyrightText: 2021 Jorrit Rouwe
3// SPDX-License-Identifier: MIT
4
5#pragma once
6
8
10
13{
14public:
16 StateRecorderImpl() = default;
18
20 virtual void WriteBytes(const void *inData, size_t inNumBytes) override;
21
23 void Rewind();
24
26 void Clear();
27
29 virtual void ReadBytes(void *outData, size_t inNumBytes) override;
30
31 // See StreamIn
32 virtual bool IsEOF() const override { return mStream.eof(); }
33
34 // See StreamIn / StreamOut
35 virtual bool IsFailed() const override { return mStream.fail(); }
36
38 bool IsEqual(StateRecorderImpl &inReference);
39
41 string GetData() const { return mStream.str(); }
42
43private:
44 std::stringstream mStream;
45};
46
#define JPH_EXPORT
Definition Core.h:227
#define JPH_NAMESPACE_END
Definition Core.h:367
#define JPH_NAMESPACE_BEGIN
Definition Core.h:361
AllocateFunction Allocate
Definition Memory.cpp:59
Definition StateRecorder.h:48
Implementation of the StateRecorder class that uses a stringstream as underlying store and that imple...
Definition StateRecorderImpl.h:13
StateRecorderImpl()=default
Constructor.
virtual bool IsFailed() const override
Returns true if there was an IO failure.
Definition StateRecorderImpl.h:35
string GetData() const
Convert the binary data to a string.
Definition StateRecorderImpl.h:41
virtual bool IsEOF() const override
Returns true when an attempt has been made to read past the end of the file.
Definition StateRecorderImpl.h:32
StateRecorderImpl(StateRecorderImpl &&inRHS)
Definition StateRecorderImpl.h:17
virtual void ReadBytes(void *outData, size_t inNumBytes)=0
Read a string of bytes from the binary stream.
virtual void WriteBytes(const void *inData, size_t inNumBytes)=0
Write a string of bytes to the binary stream.
Definition Reference.h:204