Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
JigsawStructureParser.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7
8// auto generated forward declare list
9// clang-format off
10class FeatureRegistry;
15namespace SharedTypes::v1_21_20::JigsawStructureDefinition { struct Contents; }
16namespace SharedTypes::v1_21_20::JigsawStructureProcessorList { struct Contents; }
17namespace SharedTypes::v1_21_20::JigsawStructureSet { struct Contents; }
18namespace SharedTypes::v1_21_20::JigsawStructureTemplatePool { struct Contents; }
19namespace br::worldgen { class StructureInstance; }
20namespace br::worldgen { class StructureRegistry; }
21namespace br::worldgen { struct JigsawStructure; }
22namespace br::worldgen { struct StructureProcessor; }
23namespace br::worldgen { struct StructureSet; }
24// clang-format on
25
27public:
28 // JigsawStructureParser inner types define
29 using StructureProcessorList =
30 ::std::vector<::gsl::not_null<::std::shared_ptr<::br::worldgen::StructureProcessor const>>>;
31
32public:
33 // static functions
34 // NOLINTBEGIN
35 MCNAPI static ::std::shared_ptr<::br::worldgen::StructureInstance>
36 parseStructureInstanceFromLevelStorage(::std::string_view data, ::JigsawStructureRegistry const& registry);
37
38 MCNAPI static ::std::vector<::br::worldgen::JigsawStructure> prepareJigsawDefinitionData(
39 ::std::vector<::SharedTypes::v1_21_20::JigsawStructureDefinition::Contents> const& jigsawsData,
41 );
42
43 MCNAPI static ::std::unordered_map<::std::string, ::std::shared_ptr<::br::worldgen::StructureSet>>
45 ::std::vector<::SharedTypes::v1_21_20::JigsawStructureSet::Contents> const& stuctureSets,
46 ::br::worldgen::StructureRegistry const& structureRegistry
47 );
48
49 MCNAPI static ::std::unordered_map<
50 ::std::string,
51 ::std::vector<::gsl::not_null<::std::shared_ptr<::br::worldgen::StructureProcessor const>>>>
53 ::std::vector<::SharedTypes::v1_21_20::JigsawStructureProcessorList::Contents> const& documents
54 );
55
56 MCNAPI static ::std::vector<::StructureTemplatePool> prepareTemplatePoolsData(
57 ::std::vector<::SharedTypes::v1_21_20::JigsawStructureTemplatePool::Contents> const& templatePoolsData,
58 ::Bedrock::NotNullNonOwnerPtr<::IStructureTemplateManager> structureManager,
60 ::FeatureRegistry& features
61 );
62
63 MCNAPI static ::std::string
65 // NOLINTEND
66};
Definition FeatureRegistry.h:21
Definition IStructureTemplateManager.h:16
Definition IWorldRegistriesProvider.h:25
Definition JigsawStructureRegistry.h:22
Definition StructureTemplatePool.h:16
Definition StructureInstance.h:20
Definition StructureRegistry.h:18
Definition JigsawStructureParser.h:26
static MCAPI ::std::shared_ptr<::br::worldgen::StructureInstance > parseStructureInstanceFromLevelStorage(::std::string_view data, ::JigsawStructureRegistry const &registry)
static MCAPI ::std::vector<::StructureTemplatePool > prepareTemplatePoolsData(::std::vector<::SharedTypes::v1_21_20::JigsawStructureTemplatePool::Contents > const &templatePoolsData, ::Bedrock::NotNullNonOwnerPtr<::IStructureTemplateManager > structureManager, ::JigsawStructureRegistry &registry, ::FeatureRegistry &features)
static MCAPI ::std::unordered_map< ::std::string, ::std::vector<::gsl::not_null<::std::shared_ptr<::br::worldgen::StructureProcessor const > > > > prepareProcessorsData(::std::vector<::SharedTypes::v1_21_20::JigsawStructureProcessorList::Contents > const &documents)
static MCAPI ::std::unordered_map<::std::string, ::std::shared_ptr<::br::worldgen::StructureSet > > prepareJigsawSetData(::std::vector<::SharedTypes::v1_21_20::JigsawStructureSet::Contents > const &stuctureSets, ::br::worldgen::StructureRegistry const &structureRegistry)
static MCAPI ::std::string serializeStructureInstanceForLevelStorage(::br::worldgen::StructureInstance const &instance)
static MCAPI ::std::vector<::br::worldgen::JigsawStructure > prepareJigsawDefinitionData(::std::vector<::SharedTypes::v1_21_20::JigsawStructureDefinition::Contents > const &jigsawsData, ::IWorldRegistriesProvider &registries)
Definition JigsawStructure.h:22
Definition StructureProcessor.h:23
Definition StructureSet.h:16