LeviLamina
Loading...
Searching...
No Matches
LevelChunkSaveManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/AutomaticID.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8
9// auto generated forward declare list
10// clang-format off
11class ChunkPos;
12class ChunkSource;
13class Dimension;
18class LevelChunk;
19namespace Bedrock::PubSub { class Subscription; }
20// clang-format on
21
23public:
24 // LevelChunkSaveManager inner types declare
25 // clang-format off
28 // clang-format on
29
30 // LevelChunkSaveManager inner types define
32 public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<4, 4, int> mDist;
36 ::ll::TypedStorage<8, 8, ::ChunkPos> mPosition;
37 ::ll::TypedStorage<4, 4, ::DimensionType> mDimensionId;
38 // NOLINTEND
39 };
40
42
43public:
44 // member variables
45 // NOLINTBEGIN
46 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::ILevelChunkSaveManagerProxy>> const>
47 mLevelChunkSaveManagerProxy;
48 ::ll::TypedStorage<
49 8,
50 32,
51 ::std::priority_queue<
53 ::std::vector<::LevelChunkSaveManager::LevelChunkQueuedSavingElement>,
55 mLevelChunkSaveQueue;
56 ::ll::TypedStorage<1, 1, bool> mChunkSaveInProgress;
57 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> const> mGameplayUserManager;
58 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::DimensionManager> const> mDimensionManager;
59 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnChunkLoadedSubscription;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCAPI void _findRandomChunkToSave();
66
67 MCAPI void _onChunkLoaded(::ChunkSource& chunkSource, ::LevelChunk& levelChunk, int closestPlayerDistanceSquared);
68
69 MCAPI bool _shouldDoSave() const;
70
71 MCAPI void registerForLevelChunkManagerEvents(::ILevelChunkEventManagerConnector& levelChunkEventManagerConnector);
72
74 // NOLINTEND
75
76public:
77 // destructor thunk
78 // NOLINTBEGIN
79 MCAPI void $dtor();
80 // NOLINTEND
81};
Definition ChunkPos.h:11
Definition ChunkSource.h:34
Definition DimensionManager.h:24
Definition Dimension.h:83
Definition GameplayUserManager.h:22
Definition ILevelChunkEventManagerConnector.h:14
Definition ILevelChunkSaveManagerProxy.h:18
Definition LevelChunkSaveManager.h:22
Definition LevelChunk.h:73
Definition LevelChunkSaveManager.h:31