LeviLamina
Loading...
Searching...
No Matches
FogManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8#include "mc/deps/game_refs/WeakRef.h"
9
10// auto generated forward declare list
11// clang-format off
13struct FogDefinition;
15// clang-format on
16
18public:
19 // FogManager inner types declare
20 // clang-format off
21 struct Layer;
22 // clang-format on
23
24 // FogManager inner types define
25 enum class LayerType : int {
26 DataDefault = 0,
27 Biome = 1,
28 Volume = 2,
29 ServerDirected = 3,
30 };
31
32 struct Layer {
33 public:
34 // member variables
35 // NOLINTBEGIN
36 ::ll::TypedStorage<4, 4, ::FogManager::LayerType> mType;
37 ::ll::TypedStorage<8, 24, ::std::vector<::WeakRef<::FogDefinition const>>> mDefinitions;
38 ::ll::TypedStorage<4, 4, int> mPriority;
39 // NOLINTEND
40
41 public:
42 // prevent constructor by default
43 Layer& operator=(Layer const&);
44 Layer(Layer const&);
45 Layer();
46
47 public:
48 // member functions
49 // NOLINTBEGIN
50 MCAPI
51 Layer(::FogManager::LayerType type, ::std::vector<::WeakRef<::FogDefinition const>> definitions, int priority);
52
53 MCAPI ::FogManager::Layer& operator=(::FogManager::Layer&&);
54
55 MCAPI ~Layer();
56 // NOLINTEND
57
58 public:
59 // constructor thunks
60 // NOLINTBEGIN
61 MCAPI void*
62 $ctor(::FogManager::LayerType type, ::std::vector<::WeakRef<::FogDefinition const>> definitions, int priority);
63 // NOLINTEND
64
65 public:
66 // destructor thunk
67 // NOLINTBEGIN
68 MCFOLD void $dtor();
69 // NOLINTEND
70 };
71
72public:
73 // member variables
74 // NOLINTBEGIN
75 ::ll::TypedStorage<8, 24, ::std::vector<::FogManager::Layer>> mFogLayers;
76 ::ll::TypedStorage<8, 8, ::std::reference_wrapper<::FogDefinition const>> mEngineDefault;
77 // NOLINTEND
78
79public:
80 // virtual functions
81 // NOLINTBEGIN
82 virtual ~FogManager() /*override*/ = default;
83 // NOLINTEND
84
85public:
86 // member functions
87 // NOLINTBEGIN
88 MCAPI void
89 _addToSetting(::FogTransitionSetting& setting, ::FogTransitionSetting const& other, float renderDistance) const;
90
91 MCAPI void _pushLayer(::FogManager::LayerType type, ::std::vector<::WeakRef<::FogDefinition const>> definitions);
92
93 MCAPI void removeAllLayersOfType(::FogManager::LayerType type);
94
95 MCAPI void updateServerDirectedLayers(
96 ::std::vector<::std::string> const& fogStack,
97 ::Bedrock::NotNullNonOwnerPtr<::FogDefinitionRegistry const> fogRegistry
98 );
99 // NOLINTEND
100
101public:
102 // vftables
103 // NOLINTBEGIN
104 MCNAPI static void** $vftable();
105 // NOLINTEND
106};
Definition EnableNonOwnerReferences.h:7
Definition FogDefinitionRegistry.h:5
Definition FogManager.h:5
static MCAPI void ** $vftable()
Definition FogDefinition.h:5
Definition FogManager.h:15
Definition FogTransitionSetting.h:5