20class LevelChunkSaveManager {
35 ::ll::TypedStorage<4, 4, int> mDist;
36 ::ll::TypedStorage<8, 8, ::ChunkPos> mPosition;
37 ::ll::TypedStorage<4, 4, ::DimensionType> mDimensionId;
44 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::ILevelChunkSaveManagerProxy>>
const>
45 mLevelChunkSaveManagerProxy;
49 ::std::priority_queue<
51 ::std::vector<::LevelChunkSaveManager::LevelChunkQueuedSavingElement>,
54 ::ll::TypedStorage<1, 1, bool> mChunkSaveInProgress;
55 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager>
const> mGameplayUserManager;
56 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::DimensionManager>
const> mDimensionManager;
57 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnChunkLoadedSubscription;
62 LevelChunkSaveManager();
67 MCAPI LevelChunkSaveManager(
68 ::std::unique_ptr<::ILevelChunkSaveManagerProxy> levelChunkSaverProxy,
69 ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> gameplayUserManager,
70 ::Bedrock::NotNullNonOwnerPtr<::DimensionManager> dimensionManager
73 MCAPI
void _findRandomChunkToSave();
77 MCAPI
bool _shouldDoSave()
const;
79 MCFOLD
bool isChunkSaveInProgress();
83 MCAPI
void startLeaveGame();
85 MCAPI
void trySaveChunks();
87 MCAPI ~LevelChunkSaveManager();
94 ::std::unique_ptr<::ILevelChunkSaveManagerProxy> levelChunkSaverProxy,
95 ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> gameplayUserManager,
96 ::Bedrock::NotNullNonOwnerPtr<::DimensionManager> dimensionManager