LeviLamina
Loading...
Searching...
No Matches
SimulationDistanceDataProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/settings/IOptionsDataProvider.h"
7#include "mc/deps/core/utility/pub_sub/Subscription.h"
8#include "mc/util/BidirectionalUnorderedMap.h"
9
10// auto generated forward declare list
11// clang-format off
13namespace Settings { struct OptionData; }
14// clang-format on
15
16namespace Settings {
17
18class SimulationDistanceDataProvider : public ::Settings::IOptionsDataProvider {
19public:
20 // member variables
21 // NOLINTBEGIN
22 ::ll::TypedStorage<8, 8, ::LevelDataWrapper&> mLevelData;
23 ::ll::TypedStorage<8, 40, ::std::optional<::std::string>> mInfo;
24 ::ll::TypedStorage<8, 128, ::BidirectionalUnorderedMap<int, uint>> mIndexValueMap;
25 ::ll::TypedStorage<8, 24, ::std::vector<::Settings::OptionData>> mLabels;
26 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mLevelChangedSubscription;
27 ::ll::TypedStorage<8, 24, ::std::vector<::Bedrock::PubSub::Subscription>> mLevelDataSubscriptions;
28 // NOLINTEND
29
30public:
31 // prevent constructor by default
32 SimulationDistanceDataProvider& operator=(SimulationDistanceDataProvider const&);
33 SimulationDistanceDataProvider(SimulationDistanceDataProvider const&);
34 SimulationDistanceDataProvider();
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual bool canModify() const /*override*/;
40
41 virtual ::gsl::span<::Settings::OptionData const> getOptions() const /*override*/;
42
43 virtual int getValue() const /*override*/;
44
45 virtual void setValue(int index) /*override*/;
46
47 virtual ::std::optional<::std::string> const& getInfo() const /*override*/;
48
49 virtual ~SimulationDistanceDataProvider() /*override*/;
50 // NOLINTEND
51
52public:
53 // member functions
54 // NOLINTBEGIN
55 MCAPI SimulationDistanceDataProvider(
56 ::LevelDataWrapper& levelData,
57 ::std::function<::Bedrock::PubSub::Subscription(::std::function<void(::LevelDataWrapper&)>)>
58 registerLevelChangeCallback
59 );
60
61 MCAPI uint _computeDefaultValue() const;
62
63 MCAPI void _computeLabels();
64
65 MCAPI void _updateData();
66 // NOLINTEND
67
68public:
69 // constructor thunks
70 // NOLINTBEGIN
71 MCAPI void* $ctor(
72 ::LevelDataWrapper& levelData,
73 ::std::function<::Bedrock::PubSub::Subscription(::std::function<void(::LevelDataWrapper&)>)>
74 registerLevelChangeCallback
75 );
76 // NOLINTEND
77
78public:
79 // destructor thunk
80 // NOLINTBEGIN
81 MCAPI void $dtor();
82 // NOLINTEND
83
84public:
85 // virtual function thunks
86 // NOLINTBEGIN
87 MCFOLD bool $canModify() const;
88
89 MCAPI ::gsl::span<::Settings::OptionData const> $getOptions() const;
90
91 MCAPI int $getValue() const;
92
93 MCAPI void $setValue(int index);
94
95 MCFOLD ::std::optional<::std::string> const& $getInfo() const;
96 // NOLINTEND
97
98public:
99 // vftables
100 // NOLINTBEGIN
101 MCNAPI static void** $vftable();
102 // NOLINTEND
103};
104
105} // namespace Settings
Definition LevelDataWrapper.h:14
Definition SimulationDistanceDataProvider.h:7
Definition OptionData.h:7