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