diff options
| author | Zach Hilman <zachhilman@gmail.com> | 2018-12-18 09:07:25 -0500 |
|---|---|---|
| committer | Zach Hilman <zachhilman@gmail.com> | 2019-04-25 08:07:57 -0400 |
| commit | ca5638a1426ce560f3896b3ff0d3efd02b654585 (patch) | |
| tree | 45ad83b82fd843aa08371365410e7b1780b58c5f /src/core/hle/service/acc/profile_manager.cpp | |
| parent | 78574e7a470a29e7ef0c1cc062d334d133c60830 (diff) | |
common: Extract UUID to its own class
Since the Mii database uses UUIDs very similar to the Accounts database, it makes no sense to not share code between them.
Diffstat (limited to 'src/core/hle/service/acc/profile_manager.cpp')
| -rw-r--r-- | src/core/hle/service/acc/profile_manager.cpp | 22 |
1 files changed, 2 insertions, 20 deletions
diff --git a/src/core/hle/service/acc/profile_manager.cpp b/src/core/hle/service/acc/profile_manager.cpp index 1316d0b07..767523dbc 100644 --- a/src/core/hle/service/acc/profile_manager.cpp +++ b/src/core/hle/service/acc/profile_manager.cpp @@ -13,6 +13,8 @@ namespace Service::Account { +using namespace Common; + struct UserRaw { UUID uuid; UUID uuid2; @@ -35,26 +37,6 @@ constexpr ResultCode ERROR_ARGUMENT_IS_NULL(ErrorModule::Account, 20); constexpr char ACC_SAVE_AVATORS_BASE_PATH[] = "/system/save/8000000000000010/su/avators/"; -UUID UUID::Generate() { - std::random_device device; - std::mt19937 gen(device()); - std::uniform_int_distribution<u64> distribution(1, std::numeric_limits<u64>::max()); - return UUID{distribution(gen), distribution(gen)}; -} - -std::string UUID::Format() const { - return fmt::format("0x{:016X}{:016X}", uuid[1], uuid[0]); -} - -std::string UUID::FormatSwitch() const { - std::array<u8, 16> s{}; - std::memcpy(s.data(), uuid.data(), sizeof(u128)); - return fmt::format("{:02x}{:02x}{:02x}{:02x}-{:02x}{:02x}-{:02x}{:02x}-{:02x}{:02x}-{:02x}{" - ":02x}{:02x}{:02x}{:02x}{:02x}", - s[0], s[1], s[2], s[3], s[4], s[5], s[6], s[7], s[8], s[9], s[10], s[11], - s[12], s[13], s[14], s[15]); -} - ProfileManager::ProfileManager() { ParseUserSaveFile(); |
