2017-04-28 19:54:58 -04:00
|
|
|
#pragma once
|
|
|
|
#include "stdafx.h"
|
|
|
|
#include <deque>
|
2017-11-19 23:08:23 -05:00
|
|
|
#include "BaseControlDevice.h"
|
2017-04-28 19:54:58 -04:00
|
|
|
|
2018-07-01 15:21:05 -04:00
|
|
|
class Console;
|
|
|
|
|
2017-04-28 19:54:58 -04:00
|
|
|
class RewindData
|
|
|
|
{
|
|
|
|
private:
|
|
|
|
vector<uint8_t> SaveStateData;
|
2017-05-13 21:18:55 -04:00
|
|
|
uint32_t OriginalSaveStateSize = 0;
|
2017-04-28 19:54:58 -04:00
|
|
|
|
|
|
|
void CompressState(string stateData, vector<uint8_t> &compressedState);
|
|
|
|
|
|
|
|
public:
|
2017-11-19 23:08:23 -05:00
|
|
|
std::deque<ControlDeviceState> InputLogs[BaseControlDevice::PortCount];
|
2017-04-28 19:54:58 -04:00
|
|
|
int32_t FrameCount = 0;
|
|
|
|
|
2018-07-01 15:21:05 -04:00
|
|
|
void LoadState(shared_ptr<Console> &console);
|
|
|
|
void SaveState(shared_ptr<Console> &console);
|
2017-04-28 19:54:58 -04:00
|
|
|
};
|