LeviLamina
Loading...
Searching...
No Matches
EditorExtensionServiceProvider.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/scripting/lifetime_registry/TypedObjectHandle.h"
8#include "mc/deps/scripting/runtime/Result_deprecated.h"
9#include "mc/deps/scripting/script_engine/Closure.h"
10#include "mc/editor/script/ServerScriptPackType.h"
11
12// auto generated forward declare list
13// clang-format off
14namespace Bedrock::PubSub { class Subscription; }
15namespace Editor::API { class EditorExtension; }
16namespace Editor::API { class EditorExtensionContext; }
17namespace Editor::API { struct EditorExtensionOptionalParameters; }
18namespace Scripting { class WeakLifetimeScope; }
19namespace Scripting { struct ContextId; }
20// clang-format on
21
22namespace Editor::API {
23
25public:
26 // virtual functions
27 // NOLINTBEGIN
28 // vIndex: 0
29 virtual ~EditorExtensionServiceProvider() = default;
30
31 // vIndex: 1
32 virtual ::Scripting::Result_deprecated<::Bedrock::NonOwnerPointer<::Editor::API::EditorExtension>>
33 registerExtension(
34 ::std::string const&,
38 ::std::optional<::Editor::API::EditorExtensionOptionalParameters>,
39 ::Editor::API::ServerScriptPackType
40 ) = 0;
41
42 // vIndex: 2
43 virtual ::Scripting::Result_deprecated<::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>>
44 getExtension(::std::string const&) = 0;
45
46 // vIndex: 3
47 virtual bool hasExtension(::std::string const&) = 0;
48
49 // vIndex: 4
50 virtual void
51 forEachExtension(::std::function<void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>)>) = 0;
52
53 // vIndex: 5
54 virtual void forEachExtensionOrdered(
55 ::std::function<void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>)>
56 ) = 0;
57
58 // vIndex: 6
59 virtual void forEachExtensionReverse(
60 ::std::function<void(::Bedrock::NotNullNonOwnerPtr<::Editor::API::EditorExtension>)>
61 ) = 0;
62
63 // vIndex: 7
64 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription> registerForScriptSystemRebuildEvent(
65 ::std::function<::Scripting::Result_deprecated<void>(::std::optional<::Scripting::ContextId>)>
66 ) = 0;
67
68 // vIndex: 8
69 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
70 registerForScriptSystemTeardownEvent(::std::function<::Scripting::Result_deprecated<void>()>) = 0;
71
72 // vIndex: 9
73 virtual ::Scripting::Result_deprecated<void> destroyRegisteredExtensions() = 0;
74
75 // vIndex: 10
76 virtual ::Scripting::Result_deprecated<void> createExtensionContexts(::Scripting::ContextId, bool) = 0;
77 // NOLINTEND
78
79public:
80 // virtual function thunks
81 // NOLINTBEGIN
82
83 // NOLINTEND
84};
85
86} // namespace Editor::API
Definition EditorExtensionServiceProvider.h:24
Definition Closure.h:8
Definition Result_deprecated.h:8
Definition WeakLifetimeScope.h:12
Definition ContextId.h:7
Definition TypedObjectHandle.h:8