LeviLamina
Loading...
Searching...
No Matches
ActorMigratedDefinitionFactory.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/resource_processing/category/CategoryLoader.h"
7#include "mc/resources/JsonBetaState.h"
8
9// auto generated forward declare list
10// clang-format off
11class ActorDefinition;
14class HashedString;
16class SemVersion;
19namespace JsonComponentGlueUtils { struct ActorLoaderTraits; }
20namespace JsonComponentGlueUtils { struct CustomUpgradeData; }
21namespace SharedTypes::Legacy { struct ActorDocumentCorrected; }
22namespace SharedTypes::v1_21_100 { struct ActorDocument; }
23namespace SharedTypes::v1_21_110 { struct ActorDocument; }
24namespace SharedTypes::v1_21_120 { struct ActorDocument; }
25namespace SharedTypes::v1_21_130 { struct ActorDefinitions; }
26namespace SharedTypes::v1_21_130 { struct ActorDocument; }
27namespace SharedTypes::v1_21_90 { struct ActorDocument; }
28namespace cereal { class DynamicValue; }
29namespace cereal { struct ReflectionCtx; }
30// clang-format on
31
33public:
34 // ActorMigratedDefinitionFactory inner types define
35 enum class InitResult : int {
36 Success = 0,
37 BetaFeaturesNotEnabled = 1,
38 };
39
40 using FillDefinitionCb = ::std::function<
41 ::ActorMigratedDefinitionFactory::
43
44 using FillDescriptionCb = ::ActorMigratedDefinitionFactory::InitResult (*)(
48 );
49
50 using LoaderPtr =
51 ::std::unique_ptr<::Bedrock::Resources::CategoryLoader<::JsonComponentGlueUtils::ActorLoaderTraits>>;
52
54
55 using SerializerPtr = ::std::unique_ptr<::IJsonDefinitionSerializer>;
56
57public:
58 // member variables
59 // NOLINTBEGIN
60 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::cereal::ReflectionCtx>> mCerealContext;
61 ::ll::TypedStorage<8, 64, ::std::unordered_map<::HashedString, ::std::unique_ptr<::IJsonDefinitionSerializer>>>
62 mDefinitionSerializers;
63 ::ll::TypedStorage<
64 8,
65 24,
66 ::std::vector<::ActorMigratedDefinitionFactory::InitResult (*)(
70 )>>
71 mFillActorDescriptionCbs;
72 ::ll::TypedStorage<
73 8,
74 24,
75 ::std::vector<::std::function<::ActorMigratedDefinitionFactory::InitResult(
78 ::JsonBetaState
79 )>>>
80 mFillActorDefinitionCbs;
81 ::ll::TypedStorage<
82 8,
83 120,
84 ::std::tuple<
85 ::std::vector<void (*)(::Puv::CerealUpgrader<
89 ::std::vector<void (*)(::Puv::CerealUpgrader<
93 ::std::vector<void (*)(::Puv::CerealUpgrader<
97 ::std::vector<void (*)(::Puv::CerealUpgrader<
101 ::std::vector<void (*)(::Puv::CerealUpgrader<
105 mLegacyUpgradeCallbacks;
106 ::ll::TypedStorage<8, 16, ::std::map<::HashedString, ::SemVersion>> mVersionedDefinitions;
107 ::ll::TypedStorage<
108 8,
109 8,
110 ::std::unique_ptr<::Bedrock::Resources::CategoryLoader<::JsonComponentGlueUtils::ActorLoaderTraits>>>
111 mDocumentLoader;
112 // NOLINTEND
113
114public:
115 // member functions
116 // NOLINTBEGIN
117 MCAPI void _bindActorDocumentTypes();
118
119 MCAPI void _initialize();
120
121 MCAPI ::IJsonDefinitionSerializer* _tryGetDefinitionSerializer(::std::string_view name) const;
122
123 MCAPI void resetLoader();
124
125 MCAPI void
126 setLoaderCustomData(::BedrockLoadContext customParseData, ::DeserializeDataSettings customUpgradeData) const;
127
129 // NOLINTEND
130
131public:
132 // static functions
133 // NOLINTBEGIN
134 MCAPI static ::LegacyGoalDefinition _parseLegacyGoalDefinition(
135 ::std::string name,
136 ::cereal::DynamicValue const& def,
137 ::DeserializeDataSettings const& settings
138 );
139 // NOLINTEND
140
141public:
142 // destructor thunk
143 // NOLINTBEGIN
144 MCAPI void $dtor();
145 // NOLINTEND
146};
Definition ActorDefinitionDescriptor.h:30
Definition ActorDefinition.h:80
Definition ActorMigratedDefinitionFactory.h:32
Definition BedrockLoadContext.h:14
Definition CategoryLoader.h:8
Definition HashedString.h:5
Definition IJsonDefinitionSerializer.h:16
Definition _HeaderOutputPredefine.h:289
Definition SemVersion.h:15
Definition DynamicValue.h:12
Definition DeserializeDataSettings.h:14
Definition ActorLoaderTraits.h:21
Definition CustomUpgradeData.h:15
Definition LegacyGoalDefinition.h:33
Definition ActorDocumentCorrected.h:16
Definition ActorDocument.h:16
Definition ActorDocument.h:16
Definition ActorDocument.h:16
Definition ActorDefinitions.h:15
Definition ActorDocument.h:16
Definition ActorDocument.h:17
Definition ReflectionCtx.h:11