LeviLamina
Loading...
Searching...
No Matches
StructurePoolBlockPredicateCappedRandomBlockReplacement.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/platform/threading/Mutex.h"
7#include "mc/world/level/levelgen/structure/structurepools/IStructurePoolBlockPredicate.h"
8#include "mc/world/level/levelgen/structure/structurepools/StructurePoolBlockPredicateType.h"
9
10// auto generated forward declare list
11// clang-format off
12class Block;
13class BlockPos;
14class BlockSource;
15class HashedString;
16class IRandom;
17class Randomize;
18namespace Bedrock::Threading { class Mutex; }
19namespace Util { class XXHash; }
20// clang-format on
21
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 4, uint const> mMaximumAmount;
27 ::ll::TypedStorage<8, 16, ::std::map<::HashedString, ::HashedString> const> mBlockMappings;
28 ::ll::TypedStorage<8, 24, ::std::vector<::BlockPos>> mCandidatePositions;
29 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mCandidatePositionsLock;
30 // NOLINTEND
31
32public:
33 // prevent constructor by default
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 // vIndex: 2
40 virtual bool test(::Block const& block, ::Randomize&) const /*override*/;
41
42 // vIndex: 1
43 virtual bool test(::BlockPos const& worldPos, ::BlockPos const&, ::Randomize&) const /*override*/;
44
45 // vIndex: 3
46 virtual bool finalize(::BlockSource& region, ::IRandom& random) /*override*/;
47
48 // vIndex: 5
49 virtual ::StructurePoolBlockPredicateType getType() const /*override*/;
50
51 // vIndex: 6
52 virtual void appendMetadataKey(::Util::XXHash& hash) const /*override*/;
53
54 // vIndex: 7
55 virtual bool operator==(::StructurePoolBlockPredicateCappedRandomBlockReplacement const& other) const;
56
57 // vIndex: 8
58 virtual bool operator!=(::StructurePoolBlockPredicateCappedRandomBlockReplacement const& other) const;
59
60 // vIndex: 0
62 // NOLINTEND
63
64public:
65 // member functions
66 // NOLINTBEGIN
68 ::std::map<::HashedString, ::HashedString> const& blockMappings,
69 uint maximumAmount
70 );
71
72 MCNAPI bool _finalize(::BlockSource& region, ::IRandom& random, ::std::function<void(::BlockPos&)> applyToBlocks);
73 // NOLINTEND
74
75public:
76 // constructor thunks
77 // NOLINTBEGIN
78 MCNAPI void* $ctor(::std::map<::HashedString, ::HashedString> const& blockMappings, uint maximumAmount);
79 // NOLINTEND
80
81public:
82 // destructor thunk
83 // NOLINTBEGIN
84 MCNAPI void $dtor();
85 // NOLINTEND
86
87public:
88 // virtual function thunks
89 // NOLINTBEGIN
90 MCNAPI bool $test(::Block const& block, ::Randomize&) const;
91
92 MCNAPI bool $test(::BlockPos const& worldPos, ::BlockPos const&, ::Randomize&) const;
93
94 MCNAPI bool $finalize(::BlockSource& region, ::IRandom& random);
95
96 MCNAPI ::StructurePoolBlockPredicateType $getType() const;
97
98 MCNAPI void $appendMetadataKey(::Util::XXHash& hash) const;
99 // NOLINTEND
100
101public:
102 // vftables
103 // NOLINTBEGIN
104 MCNAPI static void** $vftable();
105 // NOLINTEND
106};
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition Block.h:38
Definition HashedString.h:5
Definition IRandom.h:10
Definition IStructurePoolBlockPredicate.h:18
Definition Randomize.h:13
Definition StructurePoolBlockPredicateCappedRandomBlockReplacement.h:22
MCAPI void $appendMetadataKey(::Util::XXHash &hash) const
MCAPI bool $finalize(::BlockSource &region, ::IRandom &random)
MCAPI bool _finalize(::BlockSource &region, ::IRandom &random, ::std::function< void(::BlockPos &)> applyToBlocks)
MCAPI StructurePoolBlockPredicateCappedRandomBlockReplacement(::std::map<::HashedString, ::HashedString > const &blockMappings, uint maximumAmount)
MCAPI bool $test(::Block const &block, ::Randomize &) const
MCAPI void * $ctor(::std::map<::HashedString, ::HashedString > const &blockMappings, uint maximumAmount)
MCAPI::StructurePoolBlockPredicateType $getType() const
MCAPI bool $test(::BlockPos const &worldPos, ::BlockPos const &, ::Randomize &) const
Definition XXHash.h:7