LeviLamina
Loading...
Searching...
No Matches
BlockIgnore.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/shared_types/util/Reference.h"
7#include "mc/world/level/levelgen/v2/processors/StructureProcessor.h"
8#include "mc/world/level/levelgen/v2/processors/StructureProcessorType.h"
9
10// auto generated forward declare list
11// clang-format off
12class BlockPos;
13class BlockType;
14class HashedString;
15class IBlockSource;
16namespace Util { class XXHash; }
17namespace br::worldgen { struct StructureBlockInfo; }
18namespace br::worldgen { struct StructurePlaceSettings; }
19// clang-format on
20
21namespace br::worldgen::processors {
22
23class BlockIgnore : public ::br::worldgen::StructureProcessor {
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 24, ::std::vector<::BlockType const*>> mToIgnore;
28 // NOLINTEND
29
30public:
31 // virtual functions
32 // NOLINTBEGIN
33 virtual ::std::optional<::br::worldgen::StructureBlockInfo> process(
38 ::br::worldgen::StructureBlockInfo&& processedBlockInfo,
40 ) const /*override*/;
41
42 virtual ::br::worldgen::StructureProcessorType type() const /*override*/;
43
44 virtual void appendMetadataKey(::Util::XXHash& hash) const /*override*/;
45
46 virtual ~BlockIgnore() /*override*/;
47 // NOLINTEND
48
49public:
50 // static functions
51 // NOLINTBEGIN
52 MCAPI static void bootstrap();
53
54 MCAPI static ::br::worldgen::processors::BlockIgnore
55 from(::std::vector<::SharedTypes::Reference<0>> const& toIgnore);
56
57#ifdef LL_PLAT_C
58 MCAPI static ::br::worldgen::processors::BlockIgnore from(::std::vector<::HashedString> const& toIgnore);
59#endif
60 // NOLINTEND
61
62public:
63 // static variables
64 // NOLINTBEGIN
65 MCAPI static ::gsl::not_null<::std::shared_ptr<::br::worldgen::StructureProcessor>> const& STRUCTURE_BLOCK();
66 // NOLINTEND
67
68public:
69 // destructor thunk
70 // NOLINTBEGIN
71 MCAPI void $dtor();
72 // NOLINTEND
73
74public:
75 // virtual function thunks
76 // NOLINTBEGIN
77 MCAPI ::std::optional<::br::worldgen::StructureBlockInfo> $process(
82 ::br::worldgen::StructureBlockInfo&& processedBlockInfo,
84 ) const;
85
86 MCFOLD ::br::worldgen::StructureProcessorType $type() const;
87
88 MCAPI void $appendMetadataKey(::Util::XXHash& hash) const;
89
90
91 // NOLINTEND
92
93public:
94 // vftables
95 // NOLINTBEGIN
96 MCNAPI static void** $vftable();
97 // NOLINTEND
98};
99
100} // namespace br::worldgen::processors
Definition BlockPos.h:17
Definition BlockType.h:79
Definition HashedString.h:5
Definition IBlockSource.h:39
Definition XXHash.h:7
Definition Reference.h:8
Definition StructureBlockInfo.h:16
Definition StructurePlaceSettings.h:18
Definition StructureProcessor.h:23