LeviLamina
Loading...
Searching...
No Matches
Rule.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/levelgen/v2/processors/StructureProcessor.h"
7#include "mc/world/level/levelgen/v2/processors/StructureProcessorType.h"
8
9// auto generated forward declare list
10// clang-format off
11class BlockPos;
12class IBlockSource;
13namespace Util { class XXHash; }
14namespace br::worldgen { struct StructureBlockInfo; }
15namespace br::worldgen { struct StructurePlaceSettings; }
16namespace br::worldgen::processors { struct RuleSet; }
17// clang-format on
18
19namespace br::worldgen::processors {
20
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<8, 24, ::std::vector<::br::worldgen::processors::RuleSet>> mRules;
26 // NOLINTEND
27
28public:
29 // virtual functions
30 // NOLINTBEGIN
31 // vIndex: 1
32 virtual ::std::optional<::br::worldgen::StructureBlockInfo>
33 process(::IBlockSource& region, ::BlockPos, ::BlockPos structurePos, ::br::worldgen::StructureBlockInfo const& originalBlockInfo, ::br::worldgen::StructureBlockInfo&& processedBlockInfo, ::br::worldgen::StructurePlaceSettings const&)
34 const /*override*/;
35
36 // vIndex: 3
37 virtual ::br::worldgen::StructureProcessorType type() const /*override*/;
38
39 // vIndex: 4
40 virtual void appendMetadataKey(::Util::XXHash& hash) const /*override*/;
41
42 // vIndex: 0
43 virtual ~Rule() /*override*/;
44 // NOLINTEND
45
46public:
47 // destructor thunk
48 // NOLINTBEGIN
49 MCAPI void $dtor();
50 // NOLINTEND
51
52public:
53 // virtual function thunks
54 // NOLINTBEGIN
55 MCAPI ::std::optional<::br::worldgen::StructureBlockInfo>
56 $process(::IBlockSource& region, ::BlockPos, ::BlockPos structurePos, ::br::worldgen::StructureBlockInfo const& originalBlockInfo, ::br::worldgen::StructureBlockInfo&& processedBlockInfo, ::br::worldgen::StructurePlaceSettings const&)
57 const;
58
59 MCFOLD ::br::worldgen::StructureProcessorType $type() const;
60
61 MCAPI void $appendMetadataKey(::Util::XXHash& hash) const;
62 // NOLINTEND
63
64public:
65 // vftables
66 // NOLINTBEGIN
67 MCAPI static void** $vftable();
68 // NOLINTEND
69};
70
71} // namespace br::worldgen::processors
Definition BlockPos.h:18
Definition IBlockSource.h:35
Definition XXHash.h:7
Definition Rule.h:21
Definition RuleSet.h:10
Definition StructureBlockInfo.h:14
Definition StructurePlaceSettings.h:18
Definition StructureProcessor.h:22