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