LeviLamina
Loading...
Searching...
No Matches
EditorPlayerCoroutineService.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/EditorPlayerCoroutineServiceProvider.h"
7#include "mc/common/editor/Generator.h"
8#include "mc/common/editor/Task.h"
9#include "mc/common/editor/TaskCompletionStatus.h"
10#include "mc/deps/script_core/runtime/scripting/Result_deprecated.h"
11#include "mc/editor/services/IEditorService.h"
12#include "mc/platform/brstd/move_only_function.h"
13
14// auto generated forward declare list
15// clang-format off
16namespace Bedrock::PubSub { class Subscription; }
17namespace Editor { class ServiceProviderCollection; }
18namespace Editor { struct CoroutineStatus; }
19namespace Editor::Coroutine { class CoroutineTaskContext; }
20namespace Editor::Coroutine { struct CoroutineTaskOptions; }
21namespace Editor::Coroutine { struct TaskHandle; }
22namespace Editor::Services { class EditorCoroutineServiceProvider; }
23namespace brstd { struct source_location; }
24// clang-format on
25
26namespace Editor::Services {
27
28class EditorPlayerCoroutineService : public ::Editor::Services::IEditorService,
30public:
31 // EditorPlayerCoroutineService inner types declare
32 // clang-format off
33 struct CompletionState;
34 // clang-format on
35
36 // EditorPlayerCoroutineService inner types define
37 struct CompletionState {
38 public:
39 // member variables
40 // NOLINTBEGIN
43 // NOLINTEND
44
45 public:
46 // prevent constructor by default
47 CompletionState& operator=(CompletionState const&);
48 CompletionState(CompletionState const&);
49 CompletionState();
50 };
51
52public:
53 // member variables
54 // NOLINTBEGIN
60 // NOLINTEND
61
62public:
63 // prevent constructor by default
64 EditorPlayerCoroutineService& operator=(EditorPlayerCoroutineService const&);
65 EditorPlayerCoroutineService(EditorPlayerCoroutineService const&);
66 EditorPlayerCoroutineService();
67
68public:
69 // virtual functions
70 // NOLINTBEGIN
71 virtual ~EditorPlayerCoroutineService() /*override*/ = default;
72
73 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
74
75 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
76
77 virtual ::std::string_view getServiceName() const /*override*/;
78
79 virtual ::Editor::Coroutine::TaskHandle queue(
80 ::std::string name,
81 ::Editor::Generator<::Editor::CoroutineStatus>&& coroutine,
82 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete,
83 ::brstd::source_location creationSite
84 ) /*override*/;
85
86 virtual ::Editor::Coroutine::TaskHandle queueTask(
87 ::std::string name,
88 ::Editor::Task<void, ::Editor::CoroutineStatus>&& task,
89 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete,
90 ::brstd::source_location creationSite
91 ) /*override*/;
92
93 virtual bool cancel(::Editor::Coroutine::TaskHandle handle) /*override*/;
94
95 virtual uint64 cancelAll() /*override*/;
96
97 virtual ::Editor::CoroutineStatus const* getTaskStatus(::Editor::Coroutine::TaskHandle handle) const /*override*/;
98
99 virtual ::std::string const* getTaskName(::Editor::Coroutine::TaskHandle handle) const /*override*/;
100
101 virtual uint64 activeTaskCount() const /*override*/;
102
103 virtual ::Bedrock::PubSub::Subscription
104 registerBusyStateChangedListener(::std::function<void(bool)> callback) /*override*/;
105
106 virtual ::Editor::Coroutine::TaskHandle _queueTaskFactory(
107 ::std::string name,
108 ::Editor::Coroutine::CoroutineTaskOptions options,
109 ::brstd::move_only_function<
110 ::Editor::Task<void, ::Editor::CoroutineStatus>(::Editor::Coroutine::CoroutineTaskContext&)> factory,
111 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete,
112 ::brstd::source_location creationSite
113 ) /*override*/;
114 // NOLINTEND
115
116public:
117 // member functions
118 // NOLINTBEGIN
119 MCNAPI EditorPlayerCoroutineService(
120 ::Editor::ServiceProviderCollection& providers,
121 ::Editor::Services::EditorCoroutineServiceProvider& manager
122 );
123
125
126 MCNAPI ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> _wrapCompletion(
127 bool contributesToBusyState,
128 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete
129 );
130 // NOLINTEND
131
132public:
133 // static variables
134 // NOLINTBEGIN
135 MCNAPI static ::std::string_view const& ServiceName();
136 // NOLINTEND
137
138public:
139 // constructor thunks
140 // NOLINTBEGIN
141 MCNAPI void*
142 $ctor(::Editor::ServiceProviderCollection& providers, ::Editor::Services::EditorCoroutineServiceProvider& manager);
143 // NOLINTEND
144
145public:
146 // virtual function thunks
147 // NOLINTBEGIN
148 MCNAPI ::Scripting::Result_deprecated<void> $init();
149
150 MCNAPI ::Scripting::Result_deprecated<void> $quit();
151
152 MCNAPI ::std::string_view $getServiceName() const;
153
154 MCNAPI ::Editor::Coroutine::TaskHandle $queue(
155 ::std::string name,
156 ::Editor::Generator<::Editor::CoroutineStatus>&& coroutine,
157 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete,
158 ::brstd::source_location creationSite
159 );
160
161 MCNAPI ::Editor::Coroutine::TaskHandle $queueTask(
162 ::std::string name,
163 ::Editor::Task<void, ::Editor::CoroutineStatus>&& task,
164 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete,
165 ::brstd::source_location creationSite
166 );
167
168 MCNAPI bool $cancel(::Editor::Coroutine::TaskHandle handle);
169
170 MCNAPI uint64 $cancelAll();
171
172 MCNAPI ::Editor::CoroutineStatus const* $getTaskStatus(::Editor::Coroutine::TaskHandle handle) const;
173
174 MCNAPI ::std::string const* $getTaskName(::Editor::Coroutine::TaskHandle handle) const;
175
176 MCNAPI uint64 $activeTaskCount() const;
177
178 MCNAPI ::Bedrock::PubSub::Subscription $registerBusyStateChangedListener(::std::function<void(bool)> callback);
179
180 MCNAPI ::Editor::Coroutine::TaskHandle $_queueTaskFactory(
181 ::std::string name,
182 ::Editor::Coroutine::CoroutineTaskOptions options,
183 ::brstd::move_only_function<
184 ::Editor::Task<void, ::Editor::CoroutineStatus>(::Editor::Coroutine::CoroutineTaskContext&)> factory,
185 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete,
186 ::brstd::source_location creationSite
187 );
188
189
190 // NOLINTEND
191
192public:
193 // vftables
194 // NOLINTBEGIN
196
197 MCNAPI static void** $vftableForIEditorService();
198 // NOLINTEND
199};
200
201} // namespace Editor::Services
Definition Subscription.h:10
Definition CoroutineTaskContext.h:7
Definition Generator.h:8
Definition ServiceProviderCollection.h:7
Definition EditorCoroutineServiceProvider.h:24
Definition EditorPlayerCoroutineServiceProvider.h:23
MCAPI ::Scripting::Result_deprecated< void > $init()
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI::Editor::Coroutine::TaskHandle $queueTask(::std::string name, ::Editor::Task< void, ::Editor::CoroutineStatus > &&task, ::std::function< void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete, ::brstd::source_location creationSite)
MCAPI::Bedrock::PubSub::Subscription $registerBusyStateChangedListener(::std::function< void(bool)> callback)
static MCAPI void ** $vftableForEditorPlayerCoroutineServiceProvider()
MCAPI::std::string const * $getTaskName(::Editor::Coroutine::TaskHandle handle) const
MCAPI void * $ctor(::Editor::ServiceProviderCollection &providers, ::Editor::Services::EditorCoroutineServiceProvider &manager)
MCAPI::Editor::CoroutineStatus const * $getTaskStatus(::Editor::Coroutine::TaskHandle handle) const
static MCAPI ::std::string_view const & ServiceName()
MCAPI::Editor::Coroutine::TaskHandle $_queueTaskFactory(::std::string name, ::Editor::Coroutine::CoroutineTaskOptions options, ::brstd::move_only_function< ::Editor::Task< void, ::Editor::CoroutineStatus >(::Editor::Coroutine::CoroutineTaskContext &)> factory, ::std::function< void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete, ::brstd::source_location creationSite)
MCAPI::Editor::Coroutine::TaskHandle $queue(::std::string name, ::Editor::Generator<::Editor::CoroutineStatus > &&coroutine, ::std::function< void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete, ::brstd::source_location creationSite)
MCAPI ::std::function< void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> _wrapCompletion(bool contributesToBusyState, ::std::function< void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete)
MCAPI bool $cancel(::Editor::Coroutine::TaskHandle handle)
MCAPI::std::string_view $getServiceName() const
Definition IEditorService.h:11
Definition Task.h:8
STL namespace.
Definition CoroutineStatus.h:7
Definition CoroutineTaskOptions.h:7
Definition TaskHandle.h:7
Definition EditorPlayerCoroutineService.h:37
Definition source_location.h:7
Definition Alias.h:14