diff options
author | Zach Hilman <zachhilman@gmail.com> | 2018-12-28 02:54:44 +0100 |
---|---|---|
committer | Zach Hilman <zachhilman@gmail.com> | 2019-04-25 14:07:57 +0200 |
commit | 1aa2b99a982e83022c9aae23c6a47eae119d21a4 (patch) | |
tree | 33f5c35625557c73998d48ca8f0d26dd0f986d84 /src/core/hle/service/mii/mii_manager.cpp | |
parent | mii: Implement IsUpdated command (IPC 0) (diff) | |
download | yuzu-1aa2b99a982e83022c9aae23c6a47eae119d21a4.tar yuzu-1aa2b99a982e83022c9aae23c6a47eae119d21a4.tar.gz yuzu-1aa2b99a982e83022c9aae23c6a47eae119d21a4.tar.bz2 yuzu-1aa2b99a982e83022c9aae23c6a47eae119d21a4.tar.lz yuzu-1aa2b99a982e83022c9aae23c6a47eae119d21a4.tar.xz yuzu-1aa2b99a982e83022c9aae23c6a47eae119d21a4.tar.zst yuzu-1aa2b99a982e83022c9aae23c6a47eae119d21a4.zip |
Diffstat (limited to 'src/core/hle/service/mii/mii_manager.cpp')
-rw-r--r-- | src/core/hle/service/mii/mii_manager.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/core/hle/service/mii/mii_manager.cpp b/src/core/hle/service/mii/mii_manager.cpp index 7011ea2bd..04fc2180b 100644 --- a/src/core/hle/service/mii/mii_manager.cpp +++ b/src/core/hle/service/mii/mii_manager.cpp @@ -32,6 +32,13 @@ constexpr MiiStoreData DEFAULT_MII = { // Default values taken from multiple real databases const MiiDatabase DEFAULT_MII_DATABASE{Common::MakeMagic('N', 'F', 'D', 'B'), {}, {1}, 0, 0}; +constexpr std::array<const char*, 4> SOURCE_NAMES{ + "Database", + "Default", + "Account", + "Friend", +}; + template <typename T, std::size_t SourceArraySize, std::size_t DestArraySize> std::array<T, DestArraySize> ResizeArray(const std::array<T, SourceArraySize>& in) { std::array<T, DestArraySize> out{}; @@ -167,6 +174,11 @@ MiiStoreData ConvertInfoToStoreData(const MiiInfo& info) { } // namespace +std::ostream& operator<<(std::ostream& os,Source source) { + os << SOURCE_NAMES.at(static_cast<std::size_t>(source)); + return os; +} + std::u16string MiiInfo::Name() const { return Common::UTF16StringFromFixedZeroTerminatedBuffer(name.data(), name.size()); } @@ -212,6 +224,10 @@ void MiiManager::ResetUpdatedFlag() { updated_flag = false; } +bool MiiManager::IsTestModeEnabled() const { + return is_test_mode_enabled; +} + bool MiiManager::Empty() const { return Size() == 0; } @@ -318,6 +334,17 @@ bool MiiManager::AddOrReplace(const MiiStoreData& data) { return true; } +bool MiiManager::DestroyFile() { + database = DEFAULT_MII_DATABASE; + updated_flag = false; + return DeleteFile(); +} + +bool MiiManager::DeleteFile() { + const auto path = FileUtil::GetUserPath(FileUtil::UserPath::NANDDir) + MII_SAVE_DATABASE_PATH; + return FileUtil::Exists(path) && FileUtil::Delete(path); +} + void MiiManager::WriteToFile() { const auto raw_path = FileUtil::GetUserPath(FileUtil::UserPath::NANDDir) + "/system/save/8000000000000030"; |