LeviLamina
Loading...
Searching...
No Matches
OfferCatalogModelBase.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/gui/screens/models/OfferCatalogStatus.h"
7#include "mc/client/gui/screens/models/PlatformOfferModel.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9
10// auto generated forward declare list
11// clang-format off
12class DateManager;
14class IOfferRepository;
15struct ProductSku;
16namespace Social { class IUserManager; }
17// clang-format on
18
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IOfferRepository>> mOfferRepository;
24 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::FlightingService>> mFlightingService;
25 ::ll::TypedStorage<8, 16, ::std::shared_ptr<bool>> mExistenceTracker;
26 ::ll::TypedStorage<4, 4, ::OfferCatalogStatus> mCatalogStatus;
27 ::ll::TypedStorage<8, 24, ::std::vector<::PlatformOfferModel>> mOfferModels;
28 ::ll::TypedStorage<8, 24, ::std::vector<::PlatformOfferModel>> mActiveOfferModels;
29 ::ll::TypedStorage<8, 328, ::PlatformOfferModel> mInvalidOfferModel;
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
34 OfferCatalogModelBase();
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual ~OfferCatalogModelBase();
40
41 virtual ::OfferCatalogStatus update() = 0;
42
43 virtual void fetchAllCoinOffers() = 0;
44
45 virtual uint getNumOfferModels() const;
46
47 virtual uint getNumActiveOfferModels() const;
48
49 virtual ::PlatformOfferModel& getOfferModel(int index);
50
51 virtual ::PlatformOfferModel& getActiveOfferModel(int index);
52
53 virtual ::PlatformOfferModel* findOfferModelBySku(::ProductSku const& sku);
54
55 virtual ::PlatformOfferModel* findOfferModelByMinCoins(::std::string const& coinsNeeded);
56
57 virtual ::PlatformOfferModel* findOfferModelByMinCoins(int const coinsNeeded);
58
59 virtual ::PlatformOfferModel* _findActiveOfferModelByProductId(::std::string const& productId);
60
61 virtual ::PlatformOfferModel* _findOfferModelByProductId(::std::string const& productId);
62 // NOLINTEND
63
64public:
65 // member functions
66 // NOLINTBEGIN
67 MCAPI OfferCatalogModelBase(
68 ::Bedrock::NotNullNonOwnerPtr<::FlightingService> const& flightingService,
69 ::Bedrock::NotNullNonOwnerPtr<::IOfferRepository> const& offerRepository,
70 ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> const& userManager,
71 ::Bedrock::NotNullNonOwnerPtr<::DateManager const> dateManager
72 );
73 // NOLINTEND
74
75public:
76 // constructor thunks
77 // NOLINTBEGIN
78 MCAPI void* $ctor(
79 ::Bedrock::NotNullNonOwnerPtr<::FlightingService> const& flightingService,
80 ::Bedrock::NotNullNonOwnerPtr<::IOfferRepository> const& offerRepository,
81 ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> const& userManager,
82 ::Bedrock::NotNullNonOwnerPtr<::DateManager const> dateManager
83 );
84 // NOLINTEND
85
86public:
87 // destructor thunk
88 // NOLINTBEGIN
89 MCAPI void $dtor();
90 // NOLINTEND
91
92public:
93 // virtual function thunks
94 // NOLINTBEGIN
95 MCAPI uint $getNumOfferModels() const;
96
97 MCAPI uint $getNumActiveOfferModels() const;
98
99 MCAPI ::PlatformOfferModel& $getOfferModel(int index);
100
101 MCAPI ::PlatformOfferModel& $getActiveOfferModel(int index);
102
103 MCAPI ::PlatformOfferModel* $findOfferModelBySku(::ProductSku const& sku);
104
105 MCAPI ::PlatformOfferModel* $findOfferModelByMinCoins(::std::string const& coinsNeeded);
106
107 MCAPI ::PlatformOfferModel* $findOfferModelByMinCoins(int const coinsNeeded);
108
109 MCAPI ::PlatformOfferModel* $_findActiveOfferModelByProductId(::std::string const& productId);
110
111 MCAPI ::PlatformOfferModel* $_findOfferModelByProductId(::std::string const& productId);
112 // NOLINTEND
113
114public:
115 // vftables
116 // NOLINTBEGIN
117 MCNAPI static void** $vftable();
118 // NOLINTEND
119};
Definition DateManager.h:14
Definition FlightingService.h:5
Definition OfferCatalogModelBase.h:5
static MCAPI void ** $vftable()
Definition IUserManager.h:34