LeviLamina
Loading...
Searching...
No Matches
StructureSection.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/levelgen/structure/BoundingBox.h"
7#include "mc/world/level/levelgen/structure/structurepools/JigsawReplacement.h"
8#include "mc/world/level/levelgen/v2/terrain_adjustment/Type.h"
9
10// auto generated forward declare list
11// clang-format off
12class BlockPos;
13class BlockSource;
14class IRandom;
15class Random;
16namespace br::worldgen { struct JigsawJunction; }
17namespace br::worldgen { struct Rigid; }
18// clang-format on
19
20namespace br::worldgen {
21
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 24, ::BoundingBox> mBoundingBox;
27 // NOLINTEND
28
29public:
30 // virtual functions
31 // NOLINTBEGIN
32 virtual ~StructureSection() = default;
33
34 virtual void appendJunctions(::BoundingBox const&, ::std::vector<::br::worldgen::JigsawJunction>&) = 0;
35
36 virtual void appendRigid(::br::worldgen::TerrainAdjustment::Type, ::std::vector<::br::worldgen::Rigid>&) = 0;
37
38 virtual bool postProcess(::BlockSource&, ::Random&, ::BoundingBox const&) const = 0;
39
40 virtual bool postProcess(
42 ::IRandom&,
44 ::BoundingBox const&,
45 ::br::worldgen::JigsawReplacement
46 ) const = 0;
47
48 virtual void placeEntities(::BlockSource&, ::BoundingBox const&) const = 0;
49 // NOLINTEND
50
51public:
52 // virtual function thunks
53 // NOLINTBEGIN
54
55 // NOLINTEND
56
57public:
58 // vftables
59 // NOLINTBEGIN
60 MCNAPI static void** $vftable();
61 // NOLINTEND
62};
63
64} // namespace br::worldgen
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition BoundingBox.h:13
Definition IRandom.h:13
Definition Random.h:10
Definition StructureSection.h:22
static MCAPI void ** $vftable()
Definition JigsawJunction.h:10
Definition Rigid.h:11