LeviLamina
Loading...
Searching...
No Matches
SubChunkManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4#include "mc/client/multiplayer/SubChunkChange.h"
5
6// auto generated inclusion list
7#include "mc/client/multiplayer/ISubChunkManagerConnector.h"
8#include "mc/client/network/SubChunkInsertManager.h"
9#include "mc/deps/core/math/PairHash.h"
10#include "mc/deps/core/utility/pub_sub/Connector.h"
11#include "mc/deps/core/utility/pub_sub/Publisher.h"
12#include "mc/deps/core/utility/pub_sub/Subscription.h"
13#include "mc/world/level/chunk/SubChunkRequestManager.h"
14
15// auto generated forward declare list
16// clang-format off
17class ChunkSource;
18class LevelChunk;
19class SubChunkPos;
20struct DimensionType;
21struct SubChunkChange;
22namespace Bedrock::PubSub::ThreadModel { struct MultiThreaded; }
23// clang-format on
24
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<
30 8,
31 64,
32 ::std::unordered_map<
33 ::std::pair<::SubChunkPos, ::DimensionType>,
34 ::std::vector<::SubChunkChange>,
35 ::mce::Math::PairHash,
36 ::std::equal_to<::std::pair<::SubChunkPos, ::DimensionType>>>>
37 mPendingSubChunkChanges;
38 ::ll::TypedStorage<8, 448, ::SubChunkInsertManager> mSubChunkInsertManager;
39 ::ll::TypedStorage<8, 240, ::SubChunkRequestManager> mSubChunkRequestManager;
40 ::ll::TypedStorage<
41 8,
42 128,
43 ::Bedrock::PubSub::Publisher<
44 void(::ChunkSource&, ::LevelChunk&, short, bool),
45 ::Bedrock::PubSub::ThreadModel::MultiThreaded,
46 0>>
47 mSubChunkLoaded;
48 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnChangeDimensionSubscription;
49 // NOLINTEND
50
51public:
52 // virtual functions
53 // NOLINTBEGIN
54 virtual ::Bedrock::PubSub::Connector<void(::ChunkSource&, ::LevelChunk&, short, bool)>&
55 getOnSubChunkLoadedConnector() /*override*/;
56 // NOLINTEND
57
58public:
59 // member functions
60 // NOLINTBEGIN
61 MCAPI void pruneSubChunkChanges(::DimensionType const playerDimension);
62 // NOLINTEND
63
64public:
65 // virtual function thunks
66 // NOLINTBEGIN
67 MCAPI ::Bedrock::PubSub::Connector<void(::ChunkSource&, ::LevelChunk&, short, bool)>&
68 $getOnSubChunkLoadedConnector();
69 // NOLINTEND
70};
Definition ChunkSource.h:36
Definition ISubChunkManagerConnector.h:5
Definition LevelChunk.h:77
Definition SubChunkManager.h:5
Definition SubChunkPos.h:5
Definition DimensionType.h:5
Definition SubChunkChange.h:5