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(
34 ::IBlockSource& processedBlockInfo,
40 ) const /*override*/;
41
42 virtual ::br::worldgen::StructureProcessorType type() const /*override*/;
43
44 virtual void appendMetadataKey(::Util::XXHash& hash) const /*override*/;
45 // NOLINTEND
46
47public:
48 // static functions
49 // NOLINTBEGIN
50 MCAPI static void bootstrap();
51
52 MCAPI static ::br::worldgen::processors::BlockIgnore
53 from(::std::vector<::SharedTypes::Reference<0>> const& toIgnore);
54
55 MCAPI static ::br::worldgen::processors::BlockIgnore from(::std::vector<::HashedString> const& toIgnore);
56 // NOLINTEND
57
58public:
59 // static variables
60 // NOLINTBEGIN
61 MCAPI static ::gsl::not_null<::std::shared_ptr<::br::worldgen::StructureProcessor>> const& STRUCTURE_BLOCK();
62 // NOLINTEND
63
64public:
65 // virtual function thunks
66 // NOLINTBEGIN
67 MCAPI ::std::optional<::br::worldgen::StructureBlockInfo> $process(
68 ::IBlockSource& processedBlockInfo,
74 ) const;
75
76 MCFOLD ::br::worldgen::StructureProcessorType $type() const;
77
78 MCAPI void $appendMetadataKey(::Util::XXHash& hash) const;
79
80
81 // NOLINTEND
82
83public:
84 // vftables
85 // NOLINTBEGIN
86 MCNAPI static void** $vftable();
87 // NOLINTEND
88};
89
90} // namespace br::worldgen::processors
Definition BlockPos.h:21
Definition BlockType.h:84
Definition HashedString.h:5
Definition IBlockSource.h:38
Definition XXHash.h:7
Definition Reference.h:8
Definition StructureBlockInfo.h:16
Definition StructurePlaceSettings.h:18
Definition StructureProcessor.h:23