LeviLamina
Loading...
Searching...
No Matches
EditorPlayerCoroutineServiceProvider.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/Generator.h"
7#include "mc/common/editor/Task.h"
8#include "mc/common/editor/TaskCompletionStatus.h"
9#include "mc/platform/brstd/move_only_function.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace Bedrock::PubSub { class Subscription; }
14namespace Editor { struct CoroutineStatus; }
15namespace Editor::Coroutine { class CoroutineTaskContext; }
16namespace Editor::Coroutine { struct CoroutineTaskOptions; }
17namespace Editor::Coroutine { struct TaskHandle; }
18namespace brstd { struct source_location; }
19// clang-format on
20
21namespace Editor::Services {
22
24public:
25 // virtual functions
26 // NOLINTBEGIN
27 virtual ~EditorPlayerCoroutineServiceProvider() = default;
28
29 virtual ::Editor::Coroutine::TaskHandle queue(
30 ::std::string name,
32 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete,
33 ::brstd::source_location creationSite
34 ) = 0;
35
36 virtual ::Editor::Coroutine::TaskHandle queueTask(
37 ::std::string name,
39 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete,
40 ::brstd::source_location creationSite
41 ) = 0;
42
43 virtual bool cancel(::Editor::Coroutine::TaskHandle handle) = 0;
44
45 virtual uint64 cancelAll() = 0;
46
47 virtual ::Editor::CoroutineStatus const* getTaskStatus(::Editor::Coroutine::TaskHandle handle) const = 0;
48
49 virtual ::std::string const* getTaskName(::Editor::Coroutine::TaskHandle handle) const = 0;
50
51 virtual uint64 activeTaskCount() const = 0;
52
53 virtual ::Bedrock::PubSub::Subscription registerBusyStateChangedListener(::std::function<void(bool)> callback) = 0;
54
55 virtual ::Editor::Coroutine::TaskHandle _queueTaskFactory(
56 ::std::string name,
60 ::std::function<void(uint64, ::Editor::Coroutine::TaskCompletionStatus)> onComplete,
61 ::brstd::source_location creationSite
62 ) = 0;
63 // NOLINTEND
64};
65
66} // namespace Editor::Services
Definition Subscription.h:10
Definition CoroutineTaskContext.h:7
Definition Generator.h:8
Definition EditorPlayerCoroutineServiceProvider.h:23
Definition Task.h:8
Definition move_only_function.h:9
Definition CoroutineStatus.h:7
Definition CoroutineTaskOptions.h:7
Definition TaskHandle.h:7
Definition source_location.h:7