#pragma once #include "stdafx.h" class SaveStateManager { private: static const uint32_t MaxIndex = 7; static atomic _lastIndex; static string GetStateFilepath(int stateIndex); public: static const uint32_t FileFormatVersion = 5; static uint64_t GetStateInfo(int stateIndex); static void SaveState(); static bool LoadState(); static void SaveState(ostream &stream); static void SaveState(int stateIndex, bool displayMessage = true); static bool LoadState(istream &stream); static bool LoadState(int stateIndex); static void SaveRecentGame(string romName, string romPath, string patchPath, int32_t archiveFileIndex); static void LoadRecentGame(string filename); static void MoveToNextSlot(); static void MoveToPreviousSlot(); };