wut v1.9.1
Wii U Toolchain
Loading...
Searching...
No Matches
TitleIconCache.h
Go to the documentation of this file.
1#pragma once
2
3#ifdef __cplusplus
4
9
10namespace nn::sl
11{
12
13namespace details
14{
24WUT_CHECK_SIZE(TitleIconCacheInternal, 0x18);
25WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x00, vtable);
26WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x04, num);
27WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x08, cachedIconsBuffer);
28WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x0C, iconInfoAccessor);
29WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x10, iconInfoSerializer);
30WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x14, settingAccessor);
31
32extern "C" ITitleIconCacheInternal *
34extern "C" ITitleIconCacheInternal *
36extern "C" void
38extern "C" void
41 int,
45extern "C" void
47extern "C" void
49extern "C" nn::Result
51extern "C" nn::Result
53extern "C" nn::Result
55} // namespace details
56
58{
59public:
64 ~TitleIconCache() override
65 {
66 __dt__Q3_2nn2sl14TitleIconCacheFv(&mInstance, 2);
67 }
68
69 void
70 Initialize(int cacheSize)
71 {
72 Initialize__Q3_2nn2sl14TitleIconCacheFi(&mInstance, cacheSize);
73 }
74
75 void
76 Initialize(int cacheSize,
77 details::IIconInfoAccessorBase &iconInfoAccessor,
79 details::ISettingAccessorBase &settingAccessor)
80 {
81 Initialize__Q3_2nn2sl14TitleIconCacheFiRQ3_2nn2sl17IIconInfoAccessorRQ3_2nn2sl38ISerializer__tm__19_Q3_2nn2sl8IconInfoRQ3_2nn2sl16ISettingAccessor(
82 &mInstance,
83 cacheSize,
84 iconInfoAccessor.GetInternal(),
85 iconInfoSerializer.GetInternal(),
86 settingAccessor.GetInternal());
87 }
88
89 void
90 Finalize(int cacheSize)
91 {
92 Finalize__Q3_2nn2sl14TitleIconCacheFv(&mInstance);
93 }
94
95 void
96 Get(nn::sl::IconInfo *iconInfos, int num) const override
97 {
98 return Get__Q3_2nn2sl14TitleIconCacheCFPQ3_2nn2sl8IconInfoi((details::TitleIconCacheInternal *)&mInstance, iconInfos, num);
99 }
100
102 Load() override
103 {
104 return Load__Q3_2nn2sl14TitleIconCacheFv(&mInstance);
105 }
106
108 Update(nn::sl::TitleInfo *titleInfos, int num) override
109 {
110 return Update__Q3_2nn2sl14TitleIconCacheFPCQ3_2nn2sl9TitleInfoi(&mInstance, titleInfos, num);
111 }
112
114 Store() override
115 {
116 return Store__Q3_2nn2sl14TitleIconCacheCFv(&mInstance);
117 }
118
119private:
121 GetInternal() override
122 {
123 return reinterpret_cast<details::ITitleIconCacheInternal *>(&mInstance);
124 }
125
126 details::TitleIconCacheInternal mInstance{};
127};
128
129} // namespace nn::sl
130
131#endif
Result value type used by nn libraries.
Definition result.h:70
void Initialize(int cacheSize)
void Finalize(int cacheSize)
nn::Result Load() override
nn::Result Store() override
void Get(nn::sl::IconInfo *iconInfos, int num) const override
void Initialize(int cacheSize, details::IIconInfoAccessorBase &iconInfoAccessor, details::ISerializerBase< nn::sl::IconInfo > &iconInfoSerializer, details::ISettingAccessorBase &settingAccessor)
nn::Result Update(nn::sl::TitleInfo *titleInfos, int num) override
nn::Result Update__Q3_2nn2sl14TitleIconCacheFPCQ3_2nn2sl9TitleInfoi(TitleIconCacheInternal *, nn::sl ::TitleInfo *, int)
ITitleIconCacheInternal * __dt__Q3_2nn2sl14TitleIconCacheFv(TitleIconCacheInternal *, int)
void Get__Q3_2nn2sl14TitleIconCacheCFPQ3_2nn2sl8IconInfoi(TitleIconCacheInternal *, nn::sl::IconInfo *iconInfos, int num)
nn::Result Load__Q3_2nn2sl14TitleIconCacheFv(TitleIconCacheInternal *)
void Finalize__Q3_2nn2sl14TitleIconCacheFv(TitleIconCacheInternal *)
ISettingAccessorInternal * settingAccessor
nn::Result Store__Q3_2nn2sl14TitleIconCacheCFv(TitleIconCacheInternal *)
ITitleIconCacheInternal * __ct__Q3_2nn2sl14TitleIconCacheFv(TitleIconCacheInternal *)
IIconInfoAccessorInternal * iconInfoAccessor
void Initialize__Q3_2nn2sl14TitleIconCacheFi(TitleIconCacheInternal *, int)
void Initialize__Q3_2nn2sl14TitleIconCacheFiRQ3_2nn2sl17IIconInfoAccessorRQ3_2nn2sl38ISerializer__tm__19_Q3_2nn2sl8IconInfoRQ3_2nn2sl16ISettingAccessor(TitleIconCacheInternal *, int, IIconInfoAccessorInternal *, ISerializerInternal *, ISettingAccessorInternal *)