28class NetworkChunkPublisher {
32 ::ll::TypedStorage<8, 8, ::ILevel&> mLevel;
33 ::ll::TypedStorage<8, 8, ::ServerNetworkSystem*> mNetwork;
34 ::ll::TypedStorage<8, 176, ::NetworkIdentifier> mOwner;
35 ::ll::TypedStorage<8, 8, ::ClientBlobCache::Server::ActiveTransfersManager*> mClientCache;
36 ::ll::TypedStorage<1, 1, ::SubClientId> mSubClientId;
37 ::ll::TypedStorage<4, 12, ::BlockPos> mLastChunkUpdatePosition;
38 ::ll::TypedStorage<4, 4, uint> mLastChunkUpdateRadius;
39 ::ll::TypedStorage<4, 4, uint> mHandleForChunkBuildOrderUpdates;
40 ::ll::TypedStorage<4, 4, int> mChunksSentSinceStart;
41 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ChunkViewSource>> mSource;
42 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ChunkSource>> mNetworkChunkSource;
48 ::ll::TypedStorage<8, 32, ::std::string> mCacheSerializeBuffer;
49 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ChunkPositionAndDimension, ::std::weak_ptr<::LevelChunk>>>
51 ::ll::TypedStorage<8, 8, ::std::chrono::steady_clock::time_point> mLastGenerationRequestQueued;
52 ::ll::TypedStorage<1, 1, bool> mWaitingForServerChunks;
53 ::ll::TypedStorage<1, 1, bool> mInitialSpawnDone;
57 ::std::queue<::ClientGenerationRequestHandler, ::std::deque<::ClientGenerationRequestHandler>>>
63 NetworkChunkPublisher& operator=(NetworkChunkPublisher
const&);
64 NetworkChunkPublisher(NetworkChunkPublisher
const&);
65 NetworkChunkPublisher();
70 virtual ~NetworkChunkPublisher();
78 MCAPI
bool _isWaitingForFullyBuiltChunks()
const;
80 MCAPI
bool _sendQueuedChunk(
85 MCAPI
void _serializeAndCache(
91 MCAPI
void clearRegion();
93 MCAPI_C
void handleGenerationRequests();
95 MCAPI
void moveRegion(
::BlockPos const& position, uint blockRadius,
::Vec3 const& direction,
float minDistance);
99 MCAPI_C
void queueChunkGenerationRequests(
103 ::std::vector<::ChunkPos>
const& serverChunks
106 MCAPI
void sendQueuedChunks();