LeviLamina
Loading...
Searching...
No Matches
EditorPersistenceServiceProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/scripting/runtime/Result_deprecated.h"
7#include "mc/editor/services/persistence/PersistentDataType.h"
8
9// auto generated forward declare list
10// clang-format off
11class HashedString;
12namespace Bedrock::PubSub { class Subscription; }
13namespace Editor::Persistence { struct PersistentData; }
14namespace cereal { struct ReflectionCtx; }
15// clang-format on
16
17namespace Editor::Services {
18
20public:
21 // virtual functions
22 // NOLINTBEGIN
23 virtual ~EditorPersistenceServiceProvider() = default;
24
25 virtual ::Scripting::Result_deprecated<void>
26 addOrUpdatePersistData(::Editor::Persistence::PersistentData const&) = 0;
27
28 virtual ::Scripting::Result_deprecated<void> addPersistData(::Editor::Persistence::PersistentData const&) = 0;
29
30 virtual ::Scripting::Result_deprecated<void> updatePersistData(::Editor::Persistence::PersistentData const&) = 0;
31
32 virtual ::Scripting::Result_deprecated<void>
33 removePersistData(::HashedString const&, ::Editor::Services::PersistentDataType const) = 0;
34
35 virtual ::Scripting::Result_deprecated<::std::string>
36 getPersistData(::HashedString const&, ::Editor::Services::PersistentDataType const) const = 0;
37
38 virtual ::Scripting::Result_deprecated<::std::vector<::HashedString>>
39 getKeysStartWith(::std::string const, ::Editor::Services::PersistentDataType const) const = 0;
40
41 virtual ::Scripting::Result_deprecated<bool>
42 hasData(::HashedString const&, ::Editor::Services::PersistentDataType const) const = 0;
43
44 virtual ::std::string const& getPlayerSaveId() const = 0;
45
46 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
47 listenForPersistDataChanged(::std::function<void(::Editor::Persistence::PersistentData const&)>) = 0;
48
49 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription> listenForPersistDataRemoved(
50 ::std::function<void(::HashedString const&, ::Editor::Services::PersistentDataType)>
51 ) = 0;
52
53 virtual ::std::unique_ptr<::cereal::ReflectionCtx>& getCerealContext() = 0;
54 // NOLINTEND
55
56public:
57 // virtual function thunks
58 // NOLINTBEGIN
59
60 // NOLINTEND
61};
62
63} // namespace Editor::Services
Definition Subscription.h:10
Definition EditorPersistenceServiceProvider.h:19
Definition HashedString.h:5
Definition PersistentData.h:7
Definition ReflectionCtx.h:11