wut v1.8.0
Wii U Toolchain
Loading...
Searching...
No Matches
IUpdatePackageAccessorDetails.h
Go to the documentation of this file.
1#pragma once
2
3#include <nn/result.h>
4#include <wut.h>
5
6#ifdef __cplusplus
7
8namespace nn::sl {
9 class Condition;
10 namespace details {
11 class IUpdatePackageAccessorBase;
13
16
30 WUT_CHECK_OFFSET(IUpdatePackageAccessorInternalVTable, 0x1C, IsUpdatePackageDownloadedFn);
31
35 WUT_CHECK_SIZE(IUpdatePackageAccessorInternal, 0x04);
36 WUT_CHECK_OFFSET(IUpdatePackageAccessorInternal, 0x00, vtable);
37
39
41 friend class nn::sl::Condition;
42
43 public:
45 virtual ~IUpdatePackageAccessorBase() = default;
46
47 virtual bool PackageExists() const = 0;
48
49 virtual bool IsUpdatePackageDownloaded() const = 0;
50
51 private:
52 virtual details::IUpdatePackageAccessorInternal *GetInternal() = 0;
53 };
54
56 public:
59 bool PackageExists() const override {
60 if (!mInstancePtr) {
61 return false;
62 }
63 return mInstancePtr->vtable->PackageExistsFn(mInstancePtr);
64 }
65
66 bool IsUpdatePackageDownloaded() const override {
67 if (!mInstancePtr) {
68 return false;
69 }
70 return mInstancePtr->vtable->IsUpdatePackageDownloadedFn(mInstancePtr);
71 }
72
74 return mInstancePtr;
75 }
76
77 private:
79 };
80 } // namespace details
81} // namespace nn::sl
82
83#endif
virtual bool IsUpdatePackageDownloaded() const =0
details::IUpdatePackageAccessorInternal * GetInternal() override
UpdatePackageAccessorFromPtr(details::IUpdatePackageAccessorInternal *ptr)
bool(* IUpdatePackageAccessor_PackageExistsFn)(IUpdatePackageAccessorInternal *)
bool(* IUpdatePackageAccessor_IsUpdatePackageDownloadedFn)(IUpdatePackageAccessorInternal *)
IUpdatePackageAccessor_IsUpdatePackageDownloadedFn IsUpdatePackageDownloadedFn
struct nn::sl::details::IUpdatePackageAccessorInternal IUpdatePackageAccessorInternal
IUpdatePackageAccessorInternal * GetDefaultUpdatePackageAccessor__Q2_2nn2slFv()