Add all the files

This commit is contained in:
Exzap 2022-08-22 22:21:23 +02:00
parent e3db07a16a
commit d60742f52b
1445 changed files with 430238 additions and 0 deletions

View file

@ -0,0 +1,34 @@
#include "SaveInfo.h"
#include "config/ActiveSettings.h"
#include "Common/filestream.h"
#include "ParsedMetaXml.h"
SaveInfo::SaveInfo(TitleId titleId) : m_titleId(titleId)
{
m_path = GetSavePath(titleId);
std::error_code ec;
m_isValid = fs::is_directory(m_path, ec);
}
std::string SaveInfo::GetStorageSubpathByTitleId(TitleId titleId)
{
// usr/save/<titleIdHigh>/<titleIdLow>/
return fmt::format("usr/save/{:08x}/{:08x}", ((uint64)titleId) >> 32, (uint64)titleId & 0xFFFFFFFF);
}
fs::path SaveInfo::GetSavePath(TitleId titleId)
{
return ActiveSettings::GetMlcPath(GetStorageSubpathByTitleId(titleId));
}
bool SaveInfo::ParseMetaData()
{
if (m_hasMetaLoaded)
return m_parsedMetaXml != nullptr;
m_hasMetaLoaded = true;
auto xmlData = FileStream::LoadIntoMemory(m_path / "meta/meta.xml");
if (!xmlData)
return false;
m_parsedMetaXml = ParsedMetaXml::Parse(xmlData->data(), xmlData->size());
return m_parsedMetaXml != nullptr;
}