LeviLamina
Loading...
Searching...
No Matches
FogDefinitionRegistry.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/string/HashedString.h"
7#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9#include "mc/deps/game_refs/OwnerPtr.h"
10#include "mc/deps/game_refs/WeakRef.h"
11
12// auto generated forward declare list
13// clang-format off
17struct FogDefinition;
18namespace Json { class Value; }
19namespace cereal { struct ReflectionCtx; }
20// clang-format on
21
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 16, ::WeakRef<::FogDefinition const>> mDefaultFogDefinition;
27 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::OwnerPtr<::FogDefinition const>>>
28 mFogDefinitionMap;
29 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::OwnerPtr<::FogDefinition const>>>
30 mBackCompatFogDefinitionMap;
31 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::OwnerPtr<::FogDefinition const>>>
32 mMergedFogDefinitionMap;
33 // NOLINTEND
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ~FogDefinitionRegistry() /*override*/;
39 // NOLINTEND
40
41public:
42 // member functions
43 // NOLINTBEGIN
44 MCAPI FogDefinitionRegistry();
45
46 MCAPI void bindFogTypes(::cereal::ReflectionCtx& ctx);
47
48 MCAPI void clearBackCompatFogDefinitionMap();
49
50 MCAPI void clearDefaultFogDefinition();
51
52 MCAPI void clearMergedFogDefinitionMap();
53
54 MCAPI void load(
55 ::cereal::ReflectionCtx& ctx,
56 ::ResourcePackManager& rpm,
57 ::Bedrock::NonOwnerPointer<::LinkedAssetValidator> validator
58 );
59
60 MCAPI ::WeakRef<::FogDefinition const>
61 registerBackCompatFogDefinition(::OwnerPtr<::FogDefinition const> definition);
62
63 MCAPI ::WeakRef<::FogDefinition const> registerFogDefinition(::OwnerPtr<::FogDefinition const> definition);
64
65 MCAPI void registerFogFromJson(
66 ::cereal::ReflectionCtx& ctx,
67 ::std::string const& rawJson,
68 ::MinEngineVersion const& minEngineVersion,
69 bool isBaseGamePack,
70 ::Bedrock::NonOwnerPointer<::LinkedAssetValidator> validator
71 );
72
73 MCAPI ::WeakRef<::FogDefinition const> registerMergedFogDefinition(
74 ::std::vector<::WeakRef<::FogDefinition const>> fogReferences,
75 ::std::string const& biome
76 );
77
78 MCAPI void setDefaultFogDefinition(::HashedString const& name, bool useBackCompatMap);
79
80 MCAPI void setDefaultMergedFogDefinition(::WeakRef<::FogDefinition const> const& fogRef);
81
82 MCFOLD ::WeakRef<::FogDefinition const> tryGetDefaultFogDefinition() const;
83
84 MCAPI ::WeakRef<::FogDefinition const> tryGetFogDefinition(::HashedString const& name) const;
85 // NOLINTEND
86
87public:
88 // static functions
89 // NOLINTBEGIN
90 MCAPI static ::std::optional<::std::string> parseFogDefinitionIdentifier(::Json::Value const& root);
91 // NOLINTEND
92
93public:
94 // constructor thunks
95 // NOLINTBEGIN
96 MCAPI void* $ctor();
97 // NOLINTEND
98
99public:
100 // destructor thunk
101 // NOLINTBEGIN
102 MCAPI void $dtor();
103 // NOLINTEND
104
105public:
106 // vftables
107 // NOLINTBEGIN
108 MCNAPI static void** $vftable();
109 // NOLINTEND
110};
Definition EnableNonOwnerReferences.h:7
Definition FogDefinitionRegistry.h:5
static MCAPI void ** $vftable()
Definition Value.h:16
Definition LinkedAssetValidator.h:8
Definition MinEngineVersion.h:15
Definition ResourcePackManager.h:35
Definition FogDefinition.h:5
Definition ReflectionCtx.h:11