wut  v1.7.0
Wii U Toolchain
TitleIconCache.h
Go to the documentation of this file.
1 #pragma once
2 
3 #ifdef __cplusplus
4 
9 
10 namespace nn::sl {
11 
12  namespace details {
13  typedef struct WUT_PACKED TitleIconCacheInternal {
14  void *vtable;
15  uint32_t num;
21  WUT_CHECK_SIZE(TitleIconCacheInternal, 0x18);
22  WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x00, vtable);
23  WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x04, num);
24  WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x08, cachedIconsBuffer);
25  WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x0C, iconInfoAccessor);
26  WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x10, iconInfoSerializer);
27  WUT_CHECK_OFFSET(TitleIconCacheInternal, 0x14, settingAccessor);
28 
34  int,
43  } // namespace details
44 
46  public:
49  }
50  ~TitleIconCache() override {
51  __dt__Q3_2nn2sl14TitleIconCacheFv(&mInstance, 2);
52  }
53 
54  void Initialize(int cacheSize) {
55  Initialize__Q3_2nn2sl14TitleIconCacheFi(&mInstance, cacheSize);
56  }
57 
58  void Initialize(int cacheSize,
59  details::IIconInfoAccessorBase &iconInfoAccessor,
61  details::ISettingAccessorBase &settingAccessor) {
63  &mInstance,
64  cacheSize,
65  iconInfoAccessor.GetInternal(),
66  iconInfoSerializer.GetInternal(),
67  settingAccessor.GetInternal());
68  }
69 
70  void Finalize(int cacheSize) {
72  }
73 
74  void Get(nn::sl::IconInfo *iconInfos, int num) const override {
76  }
77 
78  nn::Result Load() override {
79  return Load__Q3_2nn2sl14TitleIconCacheFv(&mInstance);
80  }
81 
82  nn::Result Update(nn::sl::TitleInfo *titleInfos, int num) override {
83  return Update__Q3_2nn2sl14TitleIconCacheFPCQ3_2nn2sl9TitleInfoi(&mInstance, titleInfos, num);
84  }
85 
86  nn::Result Store() override {
87  return Store__Q3_2nn2sl14TitleIconCacheCFv(&mInstance);
88  }
89 
90  private:
91  details::ITitleIconCacheInternal *GetInternal() override {
92  return reinterpret_cast<details::ITitleIconCacheInternal *>(&mInstance);
93  }
94 
96  };
97 
98 } // namespace nn::sl
99 
100 #endif
Result value type used by nn libraries.
Definition: result.h:68
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
struct nn::sl::details::TitleIconCacheInternal TitleIconCacheInternal
void Initialize__Q3_2nn2sl14TitleIconCacheFi(TitleIconCacheInternal *, int)
void Initialize__Q3_2nn2sl14TitleIconCacheFiRQ3_2nn2sl17IIconInfoAccessorRQ3_2nn2sl38ISerializer__tm__19_Q3_2nn2sl8IconInfoRQ3_2nn2sl16ISettingAccessor(TitleIconCacheInternal *, int, IIconInfoAccessorInternal *, ISerializerInternal *, ISettingAccessorInternal *)
nn::Result Load__Q3_2nn2sl14TitleIconCacheFv(TitleIconCacheInternal *)
ITitleIconCacheInternal * __dt__Q3_2nn2sl14TitleIconCacheFv(TitleIconCacheInternal *, int)
void Finalize__Q3_2nn2sl14TitleIconCacheFv(TitleIconCacheInternal *)
ISettingAccessorInternal * settingAccessor
IIconInfoAccessorInternal * iconInfoAccessor
nn::Result Update__Q3_2nn2sl14TitleIconCacheFPCQ3_2nn2sl9TitleInfoi(TitleIconCacheInternal *, nn::sl ::TitleInfo *, int)
ITitleIconCacheInternal * __ct__Q3_2nn2sl14TitleIconCacheFv(TitleIconCacheInternal *)
ISerializerInternal * iconInfoSerializer
nn::Result Store__Q3_2nn2sl14TitleIconCacheCFv(TitleIconCacheInternal *)
void Get__Q3_2nn2sl14TitleIconCacheCFPQ3_2nn2sl8IconInfoi(TitleIconCacheInternal *, nn::sl::IconInfo *iconInfos, int num)