21class LevelChunkSaveManager {
36 ::ll::TypedStorage<4, 4, int> mDist;
37 ::ll::TypedStorage<8, 8, ::ChunkPos> mPosition;
38 ::ll::TypedStorage<4, 4, ::DimensionType> mDimensionId;
45 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::ILevelChunkSaveManagerProxy>>
const>
46 mLevelChunkSaveManagerProxy;
50 ::std::priority_queue<
52 ::std::vector<::LevelChunkSaveManager::LevelChunkQueuedSavingElement>,
55 ::ll::TypedStorage<1, 1, bool> mChunkSaveInProgress;
56 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager>
const> mGameplayUserManager;
57 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::DimensionManager>
const> mDimensionManager;
58 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnChunkLoadedSubscription;
63 LevelChunkSaveManager();
68 MCAPI LevelChunkSaveManager(
69 ::std::unique_ptr<::ILevelChunkSaveManagerProxy> levelChunkSaverProxy,
70 ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> gameplayUserManager,
71 ::Bedrock::NotNullNonOwnerPtr<::DimensionManager> dimensionManager
74 MCAPI
void _findRandomChunkToSave();
78 MCAPI
bool _shouldDoSave()
const;
80 MCFOLD
bool isChunkSaveInProgress();
84 MCAPI
void startLeaveGame();
86 MCAPI
void trySaveChunks();
88 MCAPI ~LevelChunkSaveManager();
95 ::std::unique_ptr<::ILevelChunkSaveManagerProxy> levelChunkSaverProxy,
96 ::Bedrock::NotNullNonOwnerPtr<::GameplayUserManager> gameplayUserManager,
97 ::Bedrock::NotNullNonOwnerPtr<::DimensionManager> dimensionManager