LeviLamina
Loading...
Searching...
No Matches
StructureBlockPalette.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/world/level/levelgen/structure/StructureBlockPaletteLoadResult.h"
8
9// auto generated forward declare list
10// clang-format off
11class Block;
12class BlockPalette;
13class CompoundTag;
15// clang-format on
16
18public:
19 // StructureBlockPalette inner types declare
20 // clang-format off
21 struct BlockPositionData;
22 struct TickingQueueData;
23 // clang-format on
24
25 // StructureBlockPalette inner types define
27 public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<4, 4, int> mTickDelay;
31 // NOLINTEND
32 };
33
35 public:
36 // member variables
37 // NOLINTBEGIN
38 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::CompoundTag>> mBlockEntityData;
39 ::ll::TypedStorage<8, 24, ::std::vector<::StructureBlockPalette::TickingQueueData>> mTickData;
40 // NOLINTEND
41
42 public:
43 // prevent constructor by default
44 BlockPositionData& operator=(BlockPositionData const&);
46
47 public:
48 // member functions
49 // NOLINTBEGIN
51
52 MCAPI ~BlockPositionData();
53 // NOLINTEND
54
55 public:
56 // constructor thunks
57 // NOLINTBEGIN
58 MCAPI void* $ctor(::StructureBlockPalette::BlockPositionData const& rhs);
59 // NOLINTEND
60
61 public:
62 // destructor thunk
63 // NOLINTBEGIN
64 MCAPI void $dtor();
65 // NOLINTEND
66 };
67
68public:
69 // member variables
70 // NOLINTBEGIN
71 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::CompoundTag>>> mStructurePaletteIdToSerializationId;
72 ::ll::TypedStorage<8, 64, ::std::unordered_map<uint64, ::StructureBlockPalette::BlockPositionData>>
73 mBlockPositionData;
74 // NOLINTEND
75
76public:
77 // prevent constructor by default
80
81public:
82 // member functions
83 // NOLINTBEGIN
85
87
88 MCAPI ::StructureBlockPaletteLoadResult _parseBlockPalette(::CompoundTag const& tag);
89
90 MCAPI ::StructureBlockPaletteLoadResult _parseBlockPositionData(::CompoundTag const& tag, int index);
91
92 MCAPI ::StructureBlockPaletteLoadResult _parseBlockPositionDataList(::CompoundTag const& tag);
93
94 MCAPI void _saveBlockPalette(::CompoundTag& tag) const;
95
96 MCAPI void _saveBlockPositionDataList(::CompoundTag& tag) const;
97
98 MCAPI ::Block const& getBlock(
99 ::BlockPalette const& blockPalette,
100 uint64 paletteId,
102 ) const;
103
104 MCAPI ::StructureBlockPalette::BlockPositionData const* getBlockPositionData(uint64 blockIndex) const;
105
106 MCAPI ::Block const*
107 tryGetBlock(uint64 paletteId, ::Bedrock::NonOwnerPointer<::IUnknownBlockTypeRegistry> unknownBlockRegistry) const;
108
110 // NOLINTEND
111
112public:
113 // constructor thunks
114 // NOLINTBEGIN
115 MCAPI void* $ctor();
116
117 MCAPI void* $ctor(::StructureBlockPalette&&);
118 // NOLINTEND
119
120public:
121 // destructor thunk
122 // NOLINTBEGIN
123 MCAPI void $dtor();
124 // NOLINTEND
125};
Definition NonOwnerPointer.h:9
Definition BlockPalette.h:19
Definition Block.h:38
Definition CompoundTag.h:13
Definition IUnknownBlockTypeRegistry.h:14
Definition StructureBlockPalette.h:17
Definition StructureBlockPalette.h:34
Definition StructureBlockPalette.h:26