2015-07-01 23:17:14 -04:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "stdafx.h"
|
|
|
|
|
|
|
|
class SaveStateManager
|
|
|
|
{
|
|
|
|
private:
|
2016-09-02 19:36:37 -04:00
|
|
|
static const uint32_t MaxIndex = 5;
|
|
|
|
static atomic<uint32_t> _lastIndex;
|
|
|
|
|
|
|
|
static string GetStateFilepath(int stateIndex);
|
2015-07-01 23:17:14 -04:00
|
|
|
|
|
|
|
public:
|
2016-08-27 16:34:53 -04:00
|
|
|
static const uint32_t FileFormatVersion = 5;
|
2016-02-14 18:36:08 -05:00
|
|
|
|
2015-07-11 08:27:22 -04:00
|
|
|
static uint64_t GetStateInfo(int stateIndex);
|
2016-09-02 19:36:37 -04:00
|
|
|
|
|
|
|
static void SaveState();
|
|
|
|
static bool LoadState();
|
|
|
|
|
2016-08-31 20:54:38 -04:00
|
|
|
static void SaveState(int stateIndex, bool displayMessage = true);
|
2015-07-11 08:27:22 -04:00
|
|
|
static bool LoadState(int stateIndex);
|
2016-09-02 19:36:37 -04:00
|
|
|
|
|
|
|
static void MoveToNextSlot();
|
|
|
|
static void MoveToPreviousSlot();
|
2015-07-01 23:17:14 -04:00
|
|
|
};
|