Play-/Source/saves/MemoryCard.h
2019-10-23 20:48:46 -04:00

27 lines
461 B
C++

#pragma once
#include <memory>
#include "filesystem_def.h"
#include "Save.h"
class CMemoryCard
{
public:
typedef std::shared_ptr<CSave> SavePtr;
typedef std::vector<SavePtr> SaveList;
CMemoryCard(const fs::path&);
virtual ~CMemoryCard() = default;
size_t GetSaveCount() const;
const CSave* GetSaveByIndex(size_t) const;
fs::path GetBasePath() const;
void RefreshContents();
private:
void ScanSaves();
SaveList m_saves;
fs::path m_basePath;
};