LeviLamina
Loading...
Searching...
No Matches
JigsawPlacer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/StablePriorityQueue.h"
7#include "mc/util/Rotation.h"
8#include "mc/world/level/levelgen/structure/structurepools/alias/PoolAliasBinding.h"
9#include "mc/world/level/levelgen/v2/JigsawSectionData.h"
10
11// auto generated forward declare list
12// clang-format off
13class BlockPos;
14class BoundingBox;
16namespace JigsawStructureUtils { class MetadataCache; }
17namespace SharedTypes::v1_21_80 { class JigsawBlockMetadata; }
18namespace br::worldgen { class ChunkAccessor; }
19namespace br::worldgen { struct JigsawPieceState; }
20namespace br::worldgen { struct JigsawSpace; }
21namespace br::worldgen { struct WorldGenRandom; }
22// clang-format on
23
24namespace br::worldgen {
25
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 8, ::br::worldgen::WorldGenRandom&> mRandom;
31 ::ll::TypedStorage<8, 8, ::br::worldgen::ChunkAccessor&> mChunkAccessor;
32 ::ll::TypedStorage<8, 8, ::JigsawStructureRegistry const&> mPools;
33 ::ll::TypedStorage<8, 8, ::PoolAliasBinding::PoolAliasLookup const&> mPoolAliasLookup;
34 ::ll::TypedStorage<4, 4, int> mMaxDepth;
35 ::ll::TypedStorage<8, 168, ::br::worldgen::JigsawSectionData> mPieces;
36 ::ll::TypedStorage<
37 8,
38 8,
39 int (*)(
41 ::BlockPos const&,
42 ::Rotation,
43 ::BoundingBox const&,
44 ::std::vector<::SharedTypes::v1_21_80::JigsawBlockMetadata> const&,
45 ::std::vector<uint64> const&,
47 )>
48 mExpansionCalc;
49 ::ll::TypedStorage<8, 8, void (*)(int, ::BoundingBox&)> mExpansionEval;
50 ::ll::TypedStorage<8, 24, ::std::vector<::br::worldgen::JigsawSpace>> mPlacementSpaces;
51 ::ll::TypedStorage<8, 40, ::StablePriorityQueue<::br::worldgen::JigsawPieceState, ::std::less>> mPlacingQueue;
52 // NOLINTEND
53
54public:
55 // prevent constructor by default
56 JigsawPlacer& operator=(JigsawPlacer const&);
59
60public:
61 // member functions
62 // NOLINTBEGIN
64
65 MCNAPI ~JigsawPlacer();
66 // NOLINTEND
67
68public:
69 // destructor thunk
70 // NOLINTBEGIN
71 MCNAPI void $dtor();
72 // NOLINTEND
73};
74
75} // namespace br::worldgen
Definition BlockPos.h:18
Definition BoundingBox.h:13
Definition JigsawStructureRegistry.h:23
Definition MetadataCache.h:13
Definition JigsawPieceState.h:10
Definition JigsawPlacer.h:26
MCAPI void tryPlacingChildren(::br::worldgen::JigsawPieceState state)