LeviLamina
Loading...
Searching...
No Matches
FeatureTerrainAdjustments.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/world/level/ChunkPos.h"
5
6// auto generated forward declare list
7// clang-format off
10class BlockPos;
11class BoundingBox;
12class BuryDescription;
13class ChunkPos;
14struct BeardKernel;
15// clang-format on
16
18public:
19 // FeatureTerrainAdjustments inner types declare
20 // clang-format off
21 struct Descriptions;
22 // clang-format on
23
24 // FeatureTerrainAdjustments inner types define
25 using TerrainAdjustmentToken = ::std::shared_ptr<bool>;
26
27 struct Descriptions {
28 public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<::BeardDescription, ::std::weak_ptr<bool>>>> mBeardifiers;
32 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<::BeardAndShaverDescription, ::std::weak_ptr<bool>>>>
33 mBeardAndShavers;
34 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<::BuryDescription, ::std::weak_ptr<bool>>>> mBurys;
35 // NOLINTEND
36
37 public:
38 // prevent constructor by default
39 Descriptions& operator=(Descriptions const&);
40
41 public:
42 // member functions
43 // NOLINTBEGIN
45
46 MCAPI ::FeatureTerrainAdjustments::Descriptions& operator=(::FeatureTerrainAdjustments::Descriptions&&);
47
48 MCAPI ~Descriptions();
49 // NOLINTEND
50
51 public:
52 // constructor thunks
53 // NOLINTBEGIN
54 MCAPI void* $ctor(::FeatureTerrainAdjustments::Descriptions const&);
55 // NOLINTEND
56
57 public:
58 // destructor thunk
59 // NOLINTBEGIN
60 MCAPI void $dtor();
61 // NOLINTEND
62 };
63
64public:
65 // member variables
66 // NOLINTBEGIN
67 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ChunkPos, ::FeatureTerrainAdjustments::Descriptions>>
68 mDescriptionsToProcess;
69 ::ll::TypedStorage<8, 8, ::std::shared_mutex> mMutex;
70 // NOLINTEND
71
72public:
73 // member functions
74 // NOLINTBEGIN
75 MCAPI ::std::shared_ptr<bool> _insertDescriptions(
76 ::std::vector<::ChunkPos> const& intersectingChunks,
77 ::std::function<void(::FeatureTerrainAdjustments::Descriptions&, ::std::weak_ptr<bool>)>&& modifyFn
78 );
79
80 MCAPI ::FeatureTerrainAdjustments::Descriptions at(::ChunkPos const& chunkPos);
81
82 MCAPI void garbageCollectDescriptions();
83
84 MCAPI ::std::shared_ptr<bool>
85 setBeardAndShaver(::BoundingBox const& bb, int deltaY, float minBeardWidth, float maxBeardWidth);
86
87 MCAPI ::std::shared_ptr<bool> setBeardifier(::BoundingBox const& bb, int deltaY);
88
89 MCAPI ::std::shared_ptr<bool> setBury(::BoundingBox const& bb);
90
92 // NOLINTEND
93
94public:
95 // static functions
96 // NOLINTBEGIN
97 MCAPI static float calculateContribution(
99 ::BlockPos const& currentPos,
100 float noiseValue
101 );
102 // NOLINTEND
103
104public:
105 // static variables
106 // NOLINTBEGIN
107 MCAPI static ::BeardKernel& mBeardKernel();
108 // NOLINTEND
109
110public:
111 // destructor thunk
112 // NOLINTBEGIN
113 MCAPI void $dtor();
114 // NOLINTEND
115};
Definition BeardAndShaverDescription.h:10
Definition BeardDescription.h:5
Definition BlockPos.h:18
Definition BoundingBox.h:18
Definition BuryDescription.h:5
Definition ChunkPos.h:11
Definition FeatureTerrainAdjustments.h:17
Definition BeardKernel.h:5
Definition FeatureTerrainAdjustments.h:27