LeviLamina
Loading...
Searching...
No Matches
ExternalFileLevelStorageSource.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/file/PathBuffer.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8#include "mc/deps/core/utility/UniqueOwnerPointer.h"
9#include "mc/platform/Result.h"
10#include "mc/world/level/storage/LevelStorageSource.h"
11
12// auto generated forward declare list
13// clang-format off
14class ContentIdentity;
16class LevelData;
17class LevelDbEnv;
19class LevelStorage;
22class Scheduler;
23namespace Core { class FilePathManager; }
24namespace Core { class Path; }
25// clang-format on
26
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::SaveTransactionManager>> mSaveTransactionManager;
32 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::Core::FilePathManager>> mFilePathManager;
33 // NOLINTEND
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ~ExternalFileLevelStorageSource() /*override*/;
39
40 virtual ::std::string const& getName() const /*override*/;
41
42 virtual ::Bedrock::UniqueOwnerPointer<::LevelStorage> createLevelStorage(
43 ::Scheduler& scheduler,
44 ::std::string const& levelId,
45 ::ContentIdentity const& contentIdentity,
46 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider,
47 ::std::chrono::nanoseconds const& writeFlushInterval,
48 ::Bedrock::NotNullNonOwnerPtr<::LevelDbEnv> levelDbEnv,
49 ::std::unique_ptr<::LevelStorageEventing> levelStorageEventing
50 ) /*override*/;
51
52 virtual ::std::unique_ptr<::LevelLooseFileStorage> createLevelLooseStorage(
53 ::std::string const& levelId,
54 ::ContentIdentity const& contentIdentity,
55 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider
56 ) /*override*/;
57
58 virtual ::Bedrock::Result<bool> getLevelData(::std::string const& levelId, ::LevelData& levelDataOut) const
59 /*override*/;
60
61 virtual void saveLevelData(::std::string const& levelId, ::LevelData const& data) /*override*/;
62
63 virtual void getLevelList(::std::vector<::Core::PathBuffer<::std::string>>& paths) /*override*/;
64
65 virtual void deleteLevel(::std::string const& levelId) /*override*/;
66
67 virtual bool renameLevel(::std::string const& levelId, ::std::string const& newLevelName) /*override*/;
68
69 virtual void
70 renameLevel(::LevelData& levelData, ::Core::Path const& fullPath, ::std::string const& newLevelName) /*override*/;
71
72 virtual bool createBackupCopyOfWorld(
73 ::std::string const& levelId,
74 ::std::string const& newLeveId,
75 ::std::string const& newName
76 ) /*override*/;
77
78 virtual bool isLevelMarkedForSync(::Core::Path const& levelPath) const /*override*/;
79
80 virtual bool isLevelPartiallyCopied(::Core::Path const& levelPath) const /*override*/;
81
82 virtual ::Core::PathBuffer<::std::string> getLevelDatFoundPath(::Core::Path const& levelPath) const /*override*/;
83
84 virtual ::Core::PathBuffer<::std::string> const getBasePath() const /*override*/;
85
86 virtual ::Core::PathBuffer<::std::string> const getPathToLevel(::std::string const& levelId) const /*override*/;
87
88 virtual ::Core::PathBuffer<::std::string> const getPathToLevelInfo(::std::string const& levelId, bool) const
89 /*override*/;
90
91 virtual bool isBetaRetailLevel(::std::string const&) const /*override*/;
92 // NOLINTEND
93
94public:
95 // member functions
96 // NOLINTBEGIN
97 MCAPI_C void _getLevelList(::std::vector<::Core::PathBuffer<::std::string>>& paths) const;
98 // NOLINTEND
99
100public:
101 // constructor thunks
102 // NOLINTBEGIN
103 MCAPI_S void* $ctor(
104 ::Bedrock::NotNullNonOwnerPtr<::Core::FilePathManager> const& pathManager,
105 ::Bedrock::NotNullNonOwnerPtr<::SaveTransactionManager> const& saveTransactionManager
106 );
107 // NOLINTEND
108
109public:
110 // destructor thunk
111 // NOLINTBEGIN
112 MCAPI void $dtor();
113 // NOLINTEND
114
115public:
116 // virtual function thunks
117 // NOLINTBEGIN
118 MCAPI ::std::string const& $getName() const;
119
120 MCAPI ::Bedrock::UniqueOwnerPointer<::LevelStorage> $createLevelStorage(
121 ::Scheduler& scheduler,
122 ::std::string const& levelId,
123 ::ContentIdentity const& contentIdentity,
124 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider,
125 ::std::chrono::nanoseconds const& writeFlushInterval,
126 ::Bedrock::NotNullNonOwnerPtr<::LevelDbEnv> levelDbEnv,
127 ::std::unique_ptr<::LevelStorageEventing> levelStorageEventing
128 );
129
130 MCAPI ::std::unique_ptr<::LevelLooseFileStorage> $createLevelLooseStorage(
131 ::std::string const& levelId,
132 ::ContentIdentity const& contentIdentity,
133 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const& keyProvider
134 );
135
136 MCAPI ::Bedrock::Result<bool> $getLevelData(::std::string const& levelId, ::LevelData& levelDataOut) const;
137
138 MCAPI void $saveLevelData(::std::string const& levelId, ::LevelData const& data);
139
140 MCAPI void $getLevelList(::std::vector<::Core::PathBuffer<::std::string>>& paths);
141
142 MCAPI void $deleteLevel(::std::string const& levelId);
143
144 MCAPI bool $renameLevel(::std::string const& levelId, ::std::string const& newLevelName);
145
146 MCAPI void $renameLevel(::LevelData& levelData, ::Core::Path const& fullPath, ::std::string const& newLevelName);
147
148 MCAPI bool $createBackupCopyOfWorld(
149 ::std::string const& levelId,
150 ::std::string const& newLeveId,
151 ::std::string const& newName
152 );
153
154 MCAPI bool $isLevelMarkedForSync(::Core::Path const& levelPath) const;
155
156 MCAPI bool $isLevelPartiallyCopied(::Core::Path const& levelPath) const;
157
158 MCAPI ::Core::PathBuffer<::std::string> $getLevelDatFoundPath(::Core::Path const& levelPath) const;
159
160 MCAPI ::Core::PathBuffer<::std::string> const $getBasePath() const;
161
162 MCAPI ::Core::PathBuffer<::std::string> const $getPathToLevel(::std::string const& levelId) const;
163
164 MCFOLD ::Core::PathBuffer<::std::string> const $getPathToLevelInfo(::std::string const& levelId, bool) const;
165
166 MCFOLD bool $isBetaRetailLevel(::std::string const&) const;
167
168
169 // NOLINTEND
170
171public:
172 // vftables
173 // NOLINTBEGIN
174 MCNAPI static void** $vftable();
175 // NOLINTEND
176};
Definition ContentIdentity.h:8
Definition FilePathManager.h:18
Definition PathBuffer.h:8
Definition Path.h:10
Definition ExternalFileLevelStorageSource.h:27
static MCAPI void ** $vftable()
Definition IContentKeyProvider.h:13
Definition LevelData.h:50
Definition LevelDbEnv.h:8
Definition LevelLooseFileStorage.h:15
Definition LevelStorageEventing.h:15
Definition LevelStorageSource.h:25
MCAPI void $dtor()
Definition LevelStorage.h:25
Definition SaveTransactionManager.h:14
Definition Scheduler.h:14