Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
StructureRegistry.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/platform/brstd/flat_map.h"
7#include "mc/world/level/levelgen/structure/registry/OnStructurePlacedToken.h"
8
9// auto generated forward declare list
10// clang-format off
11class Dimension;
12namespace br::worldgen { class StructureInstance; }
13namespace br::worldgen { struct JigsawStructure; }
14// clang-format on
15
16namespace br::worldgen {
17
19public:
20 // StructureRegistry inner types define
21 using Map = ::entt::dense_map<::std::string, ::std::shared_ptr<::br::worldgen::JigsawStructure>>;
22
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<8, 72, ::entt::dense_map<::std::string, ::std::shared_ptr<::br::worldgen::JigsawStructure>>>
27 mStructures;
28 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<char[0]>>> mOnStructurePlacedNames;
29 ::ll::TypedStorage<
30 8,
31 24,
32 ::std::vector<::std::function<void(::Dimension&, ::br::worldgen::StructureInstance const&)>>>
33 mOnStructurePlaced;
34 ::ll::TypedStorage<
35 8,
36 48,
38 ::std::string_view,
39 ::br::worldgen::OnStructurePlacedToken,
40 ::std::less<::std::string_view>,
41 ::std::vector<::std::string_view>,
42 ::std::vector<::br::worldgen::OnStructurePlacedToken>>>
43 mOnStructurePlacedMap;
44 // NOLINTEND
45
46public:
47 // member functions
48 // NOLINTBEGIN
49 MCAPI ::std::shared_ptr<::br::worldgen::JigsawStructure const> get(::std::string_view key) const;
50
51 MCNAPI ::br::worldgen::OnStructurePlacedToken
52 record(::std::string_view name, ::std::function<void(::Dimension&, ::br::worldgen::StructureInstance const&)>&& cb);
53
54 MCNAPI ::br::worldgen::OnStructurePlacedToken reserveOnPlaced(::std::string_view name);
55 // NOLINTEND
56};
57
58} // namespace br::worldgen
Definition Dimension.h:86
Definition StructureInstance.h:20
Definition StructureRegistry.h:18
MCAPI::br::worldgen::OnStructurePlacedToken record(::std::string_view name, ::std::function< void(::Dimension &, ::br::worldgen::StructureInstance const &)> &&cb)
MCAPI::br::worldgen::OnStructurePlacedToken reserveOnPlaced(::std::string_view name)
Definition flat_map.h:15
Definition JigsawStructure.h:22