LeviLamina
Loading...
Searching...
No Matches
BlockPalette.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/platform/threading/Mutex.h"
8
9// auto generated forward declare list
10// clang-format off
11class Block;
12class BlockLegacy;
14class Level;
15struct NewBlockID;
16// clang-format on
17
19public:
20 // BlockPalette inner types declare
21 // clang-format off
22 struct ConstructorToken;
23 // clang-format on
24
25 // BlockPalette inner types define
27
28 enum class PaletteType : int {
29 Sequential = 0,
30 Hashed = 1,
31 };
32
33public:
34 // member variables
35 // NOLINTBEGIN
36 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mLegacyBlockStatesConversionWarningMutex;
37 ::ll::TypedStorage<8, 16, ::std::set<::std::pair<int, int>>> mLegacyBlockStatesConversionWarningSet;
38 ::ll::TypedStorage<8, 24, ::std::vector<::Block const*>> mBlockFromNetworkId;
39 ::ll::TypedStorage<8, 8, ::Level*> mLevel;
40 // NOLINTEND
41
42public:
43 // prevent constructor by default
45
46public:
47 // virtual functions
48 // NOLINTBEGIN
49 // vIndex: 0
50 virtual ~BlockPalette();
51
52 // vIndex: 1
53 virtual ::BlockPalette::PaletteType getPaletteType();
54
55 // vIndex: 2
56 virtual void appendBlock(::Block const& blockState);
57
58 // vIndex: 3
59 virtual ::Block const& getBlock(uint const& networkId) const;
60
61 // vIndex: 4
62 virtual void assignBlockNetworkId(::Block const& block, uint64 networkId) const;
63 // NOLINTEND
64
65public:
66 // member functions
67 // NOLINTBEGIN
69
70 MCNAPI explicit BlockPalette(::Level& level);
71
72 MCNAPI ::Block const& getBlockFromLegacyData(::NewBlockID id, uint data) const;
73
74 MCNAPI ::Bedrock::NonOwnerPointer<::IUnknownBlockTypeRegistry> const getUnknownBlockTypeRegistry() const;
75
76 MCNAPI bool shouldWarnFor(::NewBlockID id, ushort data) const;
77
78 MCNAPI ::Block const& switchBlock(::Block const& oldBlock, ::BlockLegacy const& newBlockType) const;
79 // NOLINTEND
80
81public:
82 // constructor thunks
83 // NOLINTBEGIN
85
86 MCNAPI void* $ctor(::Level& level);
87 // NOLINTEND
88
89public:
90 // destructor thunk
91 // NOLINTBEGIN
92 MCNAPI void $dtor();
93 // NOLINTEND
94
95public:
96 // virtual function thunks
97 // NOLINTBEGIN
98 MCNAPI ::BlockPalette::PaletteType $getPaletteType();
99
100 MCNAPI void $appendBlock(::Block const& blockState);
101
102 MCNAPI ::Block const& $getBlock(uint const& networkId) const;
103
104 MCNAPI void $assignBlockNetworkId(::Block const& block, uint64 networkId) const;
105 // NOLINTEND
106
107public:
108 // vftables
109 // NOLINTBEGIN
110 MCNAPI static void** $vftable();
111 // NOLINTEND
112};
Definition BlockLegacy.h:88
Definition BlockPalette.h:18
MCAPI BlockPalette(::Level &level)
MCAPI::BlockPalette::PaletteType $getPaletteType()
MCAPI void * $ctor(::BlockPalette::ConstructorToken)
MCAPI void * $ctor(::Level &level)
static MCAPI void ** $vftable()
MCAPI BlockPalette(::BlockPalette::ConstructorToken)
MCAPI ::Bedrock::NonOwnerPointer<::IUnknownBlockTypeRegistry > const getUnknownBlockTypeRegistry() const
MCAPI::Block const & getBlockFromLegacyData(::NewBlockID id, uint data) const
MCAPI bool shouldWarnFor(::NewBlockID id, ushort data) const
MCAPI::Block const & switchBlock(::Block const &oldBlock, ::BlockLegacy const &newBlockType) const
MCAPI void $assignBlockNetworkId(::Block const &block, uint64 networkId) const
MCAPI void $dtor()
MCAPI void $appendBlock(::Block const &blockState)
MCAPI::Block const & $getBlock(uint const &networkId) const
Definition Block.h:38
Definition IUnknownBlockTypeRegistry.h:14
Definition Level.h:238
Definition BlockPalette.h:26
Definition NewBlockID.h:8