LeviLamina
Loading...
Searching...
No Matches
IDataProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/pub_sub/Subscription.h"
7
8namespace Settings {
9
10class IDataProvider {
11public:
12 // IDataProvider inner types define
13 using ChangeCallback = ::std::function<void()>;
14
15public:
16 // member variables
17 // NOLINTBEGIN
18 ::ll::TypedStorage<8, 64, ::std::function<void()>> mListener;
19 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mSubscription;
20 // NOLINTEND
21
22public:
23 // virtual functions
24 // NOLINTBEGIN
25 virtual ~IDataProvider();
26
27 virtual void setChangeListener(::std::function<void()> callback);
28
29 virtual bool canModify() const = 0;
30 // NOLINTEND
31
32public:
33 // destructor thunk
34 // NOLINTBEGIN
35 MCFOLD void $dtor();
36 // NOLINTEND
37
38public:
39 // virtual function thunks
40 // NOLINTBEGIN
41 MCAPI void $setChangeListener(::std::function<void()> callback);
42 // NOLINTEND
43};
44
45} // namespace Settings
Definition IDataProvider.h:7