25 using TerrainAdjustmentToken = ::std::shared_ptr<bool>;
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>>>>
34 ::ll::TypedStorage<8, 24, ::std::vector<::std::pair<::BuryDescription, ::std::weak_ptr<bool>>>> mBurys;
67 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ChunkPos, ::FeatureTerrainAdjustments::Descriptions>>
68 mDescriptionsToProcess;
69 ::ll::TypedStorage<8, 8, ::std::shared_mutex> mMutex;
75 MCAPI ::std::shared_ptr<bool> _insertDescriptions(
76 ::std::vector<::ChunkPos>
const& intersectingChunks,
80 MCAPI ::FeatureTerrainAdjustments::Descriptions at(
::ChunkPos const& chunkPos);
82 MCAPI
void garbageCollectDescriptions();
84 MCAPI ::std::shared_ptr<bool>
85 setBeardAndShaver(
::BoundingBox const& bb,
int deltaY,
float minBeardWidth,
float maxBeardWidth);
87 MCAPI ::std::shared_ptr<bool> setBeardifier(
::BoundingBox const& bb,
int deltaY);
89 MCAPI ::std::shared_ptr<bool> setBury(
::BoundingBox const& bb);
97 MCAPI
static float calculateContribution(
107 MCAPI static ::BeardKernel& mBeardKernel();