LeviLamina
Loading...
Searching...
No Matches
EditorExtensionService.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/deps/core/utility/pub_sub/Publisher.h"
8#include "mc/deps/scripting/lifetime_registry/TypedObjectHandle.h"
9#include "mc/deps/scripting/runtime/Result_deprecated.h"
10#include "mc/deps/scripting/script_engine/Closure.h"
11#include "mc/editor/script/ServerScriptPackType.h"
12#include "mc/editor/services/IEditorService.h"
13#include "mc/server/editor/api/EditorExtensionServiceProvider.h"
14
15// auto generated forward declare list
16// clang-format off
17namespace Bedrock::PubSub { class Subscription; }
18namespace Bedrock::PubSub::ThreadModel { struct SingleThreaded; }
19namespace Editor::API { class EditorExtension; }
20namespace Editor::API { class EditorExtensionContext; }
21namespace Editor::API { struct EditorExtensionOptionalParameters; }
22namespace Scripting { class WeakLifetimeScope; }
23namespace Scripting { struct ContextId; }
24// clang-format on
25
26namespace Editor::API {
27
30public:
31 // member variables
32 // NOLINTBEGIN
39 // NOLINTEND
40
41public:
42 // prevent constructor by default
46
47public:
48 // virtual functions
49 // NOLINTBEGIN
50 // vIndex: 0
51 virtual ~EditorExtensionService() /*override*/;
52
53 // vIndex: 1
54 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
55
56 // vIndex: 2
57 virtual ::Scripting::Result_deprecated<void> ready() /*override*/;
58
59 // vIndex: 3
60 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
61
62 // vIndex: 4
63 virtual ::std::string_view getServiceName() const /*override*/;
64
65 // vIndex: 1
66 virtual ::Scripting::Result_deprecated<::Bedrock::NonOwnerPointer<::Editor::API::EditorExtension>>
67 registerExtension(
68 ::std::string const& extensionName,
71 activationClosure,
73 shutdownClosure,
74 ::std::optional<::Editor::API::EditorExtensionOptionalParameters> options,
75 ::Editor::API::ServerScriptPackType packType
76 ) /*override*/;
77
78 // vIndex: 2
79 virtual ::Scripting::Result_deprecated<::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>>
80 getExtension(::std::string const& extensionName) /*override*/;
81
82 // vIndex: 3
83 virtual bool hasExtension(::std::string const& extensionName) /*override*/;
84
85 // vIndex: 4
86 virtual void forEachExtension(
87 ::std::function<void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>)> func
88 ) /*override*/;
89
90 // vIndex: 5
91 virtual void forEachExtensionOrdered(
92 ::std::function<void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>)> func
93 ) /*override*/;
94
95 // vIndex: 6
96 virtual void forEachExtensionReverse(
97 ::std::function<void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>)> func
98 ) /*override*/;
99
100 // vIndex: 7
101 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription> registerForScriptSystemRebuildEvent(
102 ::std::function<::Scripting::Result_deprecated<void>(::std::optional<::Scripting::ContextId>)> handler
103 ) /*override*/;
104
105 // vIndex: 8
106 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
107 registerForScriptSystemTeardownEvent(::std::function<::Scripting::Result_deprecated<void>()> handler) /*override*/;
108
109 // vIndex: 9
110 virtual ::Scripting::Result_deprecated<void> destroyRegisteredExtensions() /*override*/;
111
112 // vIndex: 10
113 virtual ::Scripting::Result_deprecated<void>
114 createExtensionContexts(::Scripting::ContextId contextId, bool finalEvent) /*override*/;
115 // NOLINTEND
116
117public:
118 // member functions
119 // NOLINTBEGIN
121 // NOLINTEND
122
123public:
124 // destructor thunk
125 // NOLINTBEGIN
126 MCNAPI void $dtor();
127 // NOLINTEND
128
129public:
130 // virtual function thunks
131 // NOLINTBEGIN
132 MCNAPI ::Scripting::Result_deprecated<void> $init();
133
134 MCNAPI ::Scripting::Result_deprecated<void> $ready();
135
136 MCNAPI ::Scripting::Result_deprecated<void> $quit();
137
138 MCNAPI ::std::string_view $getServiceName() const;
139
140 MCNAPI ::Scripting::Result_deprecated<::Bedrock::NonOwnerPointer<::Editor::API::EditorExtension>>
142 ::std::string const& extensionName,
145 activationClosure,
147 shutdownClosure,
148 ::std::optional<::Editor::API::EditorExtensionOptionalParameters> options,
149 ::Editor::API::ServerScriptPackType packType
150 );
151
152 MCNAPI ::Scripting::Result_deprecated<::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>>
153 $getExtension(::std::string const& extensionName);
154
155 MCNAPI bool $hasExtension(::std::string const& extensionName);
156
157 MCNAPI void
158 $forEachExtension(::std::function<void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>)> func);
159
160 MCNAPI void
161 $forEachExtensionOrdered(::std::function<void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>)> func);
162
163 MCNAPI void
164 $forEachExtensionReverse(::std::function<void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>)> func);
165
166 MCNAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription> $registerForScriptSystemRebuildEvent(
167 ::std::function<::Scripting::Result_deprecated<void>(::std::optional<::Scripting::ContextId>)> handler
168 );
169
170 MCNAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
172
173 MCNAPI ::Scripting::Result_deprecated<void> $destroyRegisteredExtensions();
174
175 MCNAPI ::Scripting::Result_deprecated<void>
177 // NOLINTEND
178
179public:
180 // vftables
181 // NOLINTBEGIN
182 MCNAPI static void** $vftableForIEditorService();
183
185 // NOLINTEND
186};
187
188} // namespace Editor::API
Definition EditorExtensionServiceProvider.h:24
Definition EditorExtensionService.h:29
MCAPI void _sortExtensionListIntoExecutionOrder()
MCAPI void $forEachExtension(::std::function< void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension >)> func)
MCAPI ::Scripting::Result_deprecated< void > $destroyRegisteredExtensions()
MCAPI ::Scripting::Result_deprecated< void > $ready()
MCAPI ::Scripting::Result_deprecated<::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension > > $getExtension(::std::string const &extensionName)
MCAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription > $registerForScriptSystemRebuildEvent(::std::function<::Scripting::Result_deprecated< void >(::std::optional<::Scripting::ContextId >)> handler)
MCAPI void $forEachExtensionOrdered(::std::function< void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension >)> func)
MCAPI ::Scripting::Result_deprecated< void > $createExtensionContexts(::Scripting::ContextId contextId, bool finalEvent)
MCAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription > $registerForScriptSystemTeardownEvent(::std::function<::Scripting::Result_deprecated< void >()> handler)
static MCAPI void ** $vftableForIEditorService()
MCAPI ::Scripting::Result_deprecated< void > $init()
MCAPI void $forEachExtensionReverse(::std::function< void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension >)> func)
MCAPI ::Scripting::Result_deprecated< void > $quit()
static MCAPI void ** $vftableForEditorExtensionServiceProvider()
MCAPI ::Scripting::Result_deprecated<::Bedrock::NonOwnerPointer<::Editor::API::EditorExtension > > $registerExtension(::std::string const &extensionName, ::Scripting::WeakLifetimeScope scope, ::Scripting::Closure< void(::Scripting::TypedObjectHandle<::Editor::API::EditorExtensionContext >)> activationClosure, ::Scripting::Closure< void(::Scripting::TypedObjectHandle<::Editor::API::EditorExtensionContext >)> shutdownClosure, ::std::optional<::Editor::API::EditorExtensionOptionalParameters > options, ::Editor::API::ServerScriptPackType packType)
MCAPI bool $hasExtension(::std::string const &extensionName)
MCAPI::std::string_view $getServiceName() const
Definition IEditorService.h:11
Definition Closure.h:8
Definition Result_deprecated.h:8
Definition WeakLifetimeScope.h:12
Definition ContextId.h:7
Definition TypedObjectHandle.h:8
Definition Alias.h:14