LeviLamina
Loading...
Searching...
No Matches
LevelStorageSource.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/EnableNonOwnerReferences.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9#include "mc/deps/core/utility/UniqueOwnerPointer.h"
10#include "mc/platform/Result.h"
11
12// auto generated forward declare list
13// clang-format off
14class ContentIdentity;
16class LevelData;
17class LevelDbEnv;
19class LevelStorage;
21class Scheduler;
22namespace Core { class Path; }
23// clang-format on
24
26public:
27 // virtual functions
28 // NOLINTBEGIN
29 virtual ~LevelStorageSource() /*override*/;
30
31 virtual ::std::string const& getName() const = 0;
32
33 virtual ::Bedrock::Result<bool> getLevelData(::std::string const&, ::LevelData&) const = 0;
34
35 virtual void saveLevelData(::std::string const& levelId, ::LevelData const& data) = 0;
36
37 virtual void getLevelList(::std::vector<::Core::PathBuffer<::std::string>>&) = 0;
38
39 virtual ::Bedrock::UniqueOwnerPointer<::LevelStorage> createLevelStorage(
41 ::std::string const&,
42 ::ContentIdentity const&,
43 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const&,
44 ::std::chrono::nanoseconds const&,
45 ::Bedrock::NotNullNonOwnerPtr<::LevelDbEnv>,
46 ::std::unique_ptr<::LevelStorageEventing>
47 ) = 0;
48
49 virtual ::std::unique_ptr<::LevelLooseFileStorage> createLevelLooseStorage(
50 ::std::string const&,
51 ::ContentIdentity const&,
52 ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> const&
53 ) = 0;
54
55 virtual void deleteLevel(::std::string const&) = 0;
56
57 virtual bool renameLevel(::std::string const&, ::std::string const&) = 0;
58
59 virtual void renameLevel(::LevelData&, ::Core::Path const&, ::std::string const&) = 0;
60
61 virtual bool createBackupCopyOfWorld(::std::string const&, ::std::string const&, ::std::string const&) = 0;
62
63 virtual bool isLevelMarkedForSync(::Core::Path const&) const = 0;
64
65 virtual bool isLevelPartiallyCopied(::Core::Path const&) const = 0;
66
67 virtual ::Core::PathBuffer<::std::string> getLevelDatFoundPath(::Core::Path const&) const = 0;
68
69 virtual ::Core::PathBuffer<::std::string> const getBasePath() const = 0;
70
71 virtual ::Core::PathBuffer<::std::string> const getPathToLevel(::std::string const&) const = 0;
72
73 virtual ::Core::PathBuffer<::std::string> const getPathToLevelInfo(::std::string const&, bool) const = 0;
74
75 virtual bool isBetaRetailLevel(::std::string const&) const = 0;
76 // NOLINTEND
77
78public:
79 // static variables
80 // NOLINTBEGIN
81 MCNAPI static ::std::chrono::nanoseconds const& WORLD_SAVE_FLUSH_INTERVAL();
82
83 MCNAPI static ::std::chrono::nanoseconds const& WORLD_SAVE_MENU_FLUSH_INTERVAL();
84 // NOLINTEND
85
86public:
87 // destructor thunk
88 // NOLINTBEGIN
89 MCNAPI void $dtor();
90 // NOLINTEND
91
92public:
93 // virtual function thunks
94 // NOLINTBEGIN
95
96 // NOLINTEND
97};
Definition EnableNonOwnerReferences.h:7
Definition ContentIdentity.h:8
Definition PathBuffer.h:8
Definition Path.h:10
Definition IContentKeyProvider.h:13
Definition LevelData.h:50
Definition LevelDbEnv.h:8
Definition LevelLooseFileStorage.h:15
Definition LevelStorageEventing.h:15
Definition LevelStorageSource.h:25
static MCAPI ::std::chrono::nanoseconds const & WORLD_SAVE_FLUSH_INTERVAL()
static MCAPI ::std::chrono::nanoseconds const & WORLD_SAVE_MENU_FLUSH_INTERVAL()
MCAPI void $dtor()
Definition LevelStorage.h:25
Definition Scheduler.h:14