LeviLamina
Loading...
Searching...
No Matches
EditorServerPersistenceService.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/PersistenceGroupChangeAction.h"
7#include "mc/common/editor/PersistenceGroupItemChangeAction.h"
8#include "mc/common/editor/PersistenceGroupType.h"
9#include "mc/common/editor/PersistenceScope.h"
10#include "mc/deps/core/file/PathBuffer.h"
11#include "mc/deps/game_refs/StackRefResult.h"
12#include "mc/deps/scripting/runtime/Result_deprecated.h"
13#include "mc/editor/services/persistence/EditorPersistenceService.h"
14
15// auto generated forward declare list
16// clang-format off
17namespace Editor::Network { class PersistenceQuerySharedGroupPayload; }
18namespace Editor::Services { class PersistenceGroup; }
19namespace Editor::Services { class PersistenceItem; }
20namespace Editor::Services { struct PersistenceGroupItemMetadata; }
21namespace Editor::Services { struct PersistenceGroupMetadata; }
22// clang-format on
23
24namespace Editor::Services {
25
26class EditorServerPersistenceService : public ::Editor::Services::EditorPersistenceService {
27public:
28 // member variables
29 // NOLINTBEGIN
32 // NOLINTEND
33
34public:
35 // prevent constructor by default
36 EditorServerPersistenceService& operator=(EditorServerPersistenceService const&);
37 EditorServerPersistenceService(EditorServerPersistenceService const&);
38 EditorServerPersistenceService();
39
40public:
41 // virtual functions
42 // NOLINTBEGIN
43 virtual ~EditorServerPersistenceService() /*override*/ = default;
44
45 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
46
47 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
48
49 virtual ::Scripting::Result_deprecated<void> ready() /*override*/;
50
51 virtual ::std::string_view getServiceName() const /*override*/;
52
53 virtual ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup>> getOrCreateGroup(
54 ::std::string const& namespacedName,
55 ::Editor::Services::PersistenceScope scope,
56 ::std::optional<int> version,
57 ::std::optional<::Editor::Services::PersistenceGroupType> groupType
58 ) /*override*/;
59
60 virtual ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup>> createGroup(
61 ::std::string const& namespacedName,
62 ::Editor::Services::PersistenceScope scope,
63 ::std::optional<int> version,
64 ::std::optional<::Editor::Services::PersistenceGroupType> groupType
65 ) /*override*/;
66
67 virtual ::Scripting::Result_deprecated<void> deleteGroup(
68 ::std::string const& namespacedName,
69 ::Editor::Services::PersistenceScope scope,
70 ::std::optional<int> version
71 ) /*override*/;
72
73 virtual ::Core::PathBuffer<::std::string> _getGroupRootPath(::Editor::Services::PersistenceScope scope) const
74 /*override*/;
75 // NOLINTEND
76
77public:
78 // member functions
79 // NOLINTBEGIN
80 MCNAPI ::Editor::Services::PersistenceGroupMetadata _createMetadata(
81 ::std::string const& namespacedName,
82 ::Editor::Services::PersistenceScope scope,
83 ::std::optional<int> version
84 );
85
86#ifdef LL_PLAT_S
87 MCNAPI void _dispatchGroupItemsToClient(
89 ::Editor::Services::PersistenceGroupItemChangeAction action
90 );
91#endif
92
94 ::Editor::Services::PersistenceGroupChangeAction action,
96 );
97
98 MCNAPI ::std::string _getGroupItemKey(::std::string groupVersionName, ::Editor::Services::PersistenceScope scope);
99
101 ::std::string key,
102 ::Editor::Services::PersistenceScope scope,
103 ::Editor::Services::PersistenceGroupItemChangeAction action,
105 );
106
108 // NOLINTEND
109
110public:
111 // virtual function thunks
112 // NOLINTBEGIN
113 MCNAPI ::Scripting::Result_deprecated<void> $init();
114
115 MCNAPI ::Scripting::Result_deprecated<void> $quit();
116
117 MCNAPI ::Scripting::Result_deprecated<void> $ready();
118
119 MCNAPI ::std::string_view $getServiceName() const;
120
121 MCNAPI ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup>> $getOrCreateGroup(
122 ::std::string const& namespacedName,
123 ::Editor::Services::PersistenceScope scope,
124 ::std::optional<int> version,
125 ::std::optional<::Editor::Services::PersistenceGroupType> groupType
126 );
127
128 MCNAPI ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup>> $createGroup(
129 ::std::string const& namespacedName,
130 ::Editor::Services::PersistenceScope scope,
131 ::std::optional<int> version,
132 ::std::optional<::Editor::Services::PersistenceGroupType> groupType
133 );
134
135 MCNAPI ::Scripting::Result_deprecated<void> $deleteGroup(
136 ::std::string const& namespacedName,
137 ::Editor::Services::PersistenceScope scope,
138 ::std::optional<int> version
139 );
140
141 MCNAPI ::Core::PathBuffer<::std::string> $_getGroupRootPath(::Editor::Services::PersistenceScope scope) const;
142
143
144 // NOLINTEND
145
146public:
147 // vftables
148 // NOLINTBEGIN
150
151 MCNAPI static void** $vftableForIEditorService();
152 // NOLINTEND
153};
154
155} // namespace Editor::Services
Definition PersistenceQuerySharedGroupPayload.h:11
Definition EditorPersistenceService.h:30
MCAPI void _handleGroupItemChange(::std::string key, ::Editor::Services::PersistenceScope scope, ::Editor::Services::PersistenceGroupItemChangeAction action, ::StackRefResult<::Editor::Services::PersistenceItem > &item)
static MCAPI void ** $vftableForEditorPersistenceServiceProvider()
MCAPI::Editor::Services::PersistenceGroupMetadata _createMetadata(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version)
MCAPI void _dispatchGroupToClients(::Editor::Services::PersistenceGroupChangeAction action, ::Editor::Services::PersistenceGroupMetadata groupMetadata)
MCAPI ::Scripting::Result_deprecated< void > $deleteGroup(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version)
MCAPI ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup > > $getOrCreateGroup(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version, ::std::optional<::Editor::Services::PersistenceGroupType > groupType)
MCAPI void _handleQuerySharedGroupPayload(::Editor::Network::PersistenceQuerySharedGroupPayload const &payload)
MCAPI ::Scripting::Result_deprecated<::StackRefResult<::Editor::Services::PersistenceGroup > > $createGroup(::std::string const &namespacedName, ::Editor::Services::PersistenceScope scope, ::std::optional< int > version, ::std::optional<::Editor::Services::PersistenceGroupType > groupType)
MCAPI ::Core::PathBuffer<::std::string > $_getGroupRootPath(::Editor::Services::PersistenceScope scope) const
MCAPI::std::string_view $getServiceName() const
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI::std::string _getGroupItemKey(::std::string groupVersionName, ::Editor::Services::PersistenceScope scope)
MCAPI ::Scripting::Result_deprecated< void > $ready()
MCAPI ::Scripting::Result_deprecated< void > $init()
Definition PersistenceGroup.h:20
Definition PersistenceItem.h:18
Definition StackRefResult.h:7
Definition PersistenceGroupItemMetadata.h:7
Definition PersistenceGroupMetadata.h:15
Definition Alias.h:14