diff options
author | Liam <byteslice@airmail.cc> | 2024-02-17 17:30:02 +0100 |
---|---|---|
committer | Liam <byteslice@airmail.cc> | 2024-02-18 16:32:21 +0100 |
commit | 270d07be2fb0c190e3b52686dbe7d72c0394f54d (patch) | |
tree | 5946fea94dbfa149717946c1c6ad08a79c3360d8 /src/core/hle/service/ns/platform_service_manager.h | |
parent | ns: rename results header (diff) | |
download | yuzu-270d07be2fb0c190e3b52686dbe7d72c0394f54d.tar yuzu-270d07be2fb0c190e3b52686dbe7d72c0394f54d.tar.gz yuzu-270d07be2fb0c190e3b52686dbe7d72c0394f54d.tar.bz2 yuzu-270d07be2fb0c190e3b52686dbe7d72c0394f54d.tar.lz yuzu-270d07be2fb0c190e3b52686dbe7d72c0394f54d.tar.xz yuzu-270d07be2fb0c190e3b52686dbe7d72c0394f54d.tar.zst yuzu-270d07be2fb0c190e3b52686dbe7d72c0394f54d.zip |
Diffstat (limited to '')
-rw-r--r-- | src/core/hle/service/ns/platform_service_manager.h (renamed from src/core/hle/service/ns/iplatform_service_manager.h) | 33 |
1 files changed, 27 insertions, 6 deletions
diff --git a/src/core/hle/service/ns/iplatform_service_manager.h b/src/core/hle/service/ns/platform_service_manager.h index 03071e02b..b82c385a6 100644 --- a/src/core/hle/service/ns/iplatform_service_manager.h +++ b/src/core/hle/service/ns/platform_service_manager.h @@ -5,7 +5,9 @@ #include <memory> #include <vector> +#include "core/hle/service/cmif_types.h" #include "core/hle/service/service.h" +#include "core/hle/service/set/settings_types.h" namespace Service { @@ -23,6 +25,20 @@ enum class FontArchives : u64 { ChineseSimple = 0x0100000000000814, }; +enum class SharedFontType : u32 { + JapanUSEuropeStandard = 0, + ChineseSimplified = 1, + ExtendedChineseSimplified = 2, + ChineseTraditional = 3, + KoreanHangul = 4, + NintendoExtended = 5, +}; + +enum class LoadState : u32 { + Loading = 0, + Loaded = 1, +}; + constexpr std::array<std::pair<FontArchives, const char*>, 7> SHARED_FONTS{ std::make_pair(FontArchives::Standard, "nintendo_udsg-r_std_003.bfttf"), std::make_pair(FontArchives::ChineseSimple, "nintendo_udsg-r_org_zh-cn_003.bfttf"), @@ -42,12 +58,17 @@ public: ~IPlatformServiceManager() override; private: - void RequestLoad(HLERequestContext& ctx); - void GetLoadState(HLERequestContext& ctx); - void GetSize(HLERequestContext& ctx); - void GetSharedMemoryAddressOffset(HLERequestContext& ctx); - void GetSharedMemoryNativeHandle(HLERequestContext& ctx); - void GetSharedFontInOrderOfPriority(HLERequestContext& ctx); + Result RequestLoad(SharedFontType type); + Result GetLoadState(Out<LoadState> out_load_state, SharedFontType type); + Result GetSize(Out<u32> out_size, SharedFontType type); + Result GetSharedMemoryAddressOffset(Out<u32> out_shared_memory_offset, SharedFontType type); + Result GetSharedMemoryNativeHandle( + OutCopyHandle<Kernel::KSharedMemory> out_shared_memory_native_handle); + Result GetSharedFontInOrderOfPriority(OutArray<u32, BufferAttr_HipcMapAlias> out_font_codes, + OutArray<u32, BufferAttr_HipcMapAlias> out_font_offsets, + OutArray<u32, BufferAttr_HipcMapAlias> out_font_sizes, + Out<bool> out_fonts_are_loaded, Out<u32> out_font_count, + Set::LanguageCode language_code); struct Impl; std::unique_ptr<Impl> impl; |