LeviLamina
Loading...
Searching...
No Matches
ModeService.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/scripting/runtime/Result.h"
7#include "mc/deps/scripting/runtime/Result_deprecated.h"
8#include "mc/editor/Mode.h"
9#include "mc/editor/serviceproviders/ModeServiceProvider.h"
10#include "mc/editor/services/IEditorService.h"
11
12// auto generated forward declare list
13// clang-format off
14namespace Bedrock::PubSub { class Subscription; }
15namespace Editor::Network { class ModeChangedPayload; }
16// clang-format on
17
18namespace Editor::Services {
19
21public:
22 // member variables
23 // NOLINTBEGIN
27 // NOLINTEND
28
29public:
30 // prevent constructor by default
31 ModeService& operator=(ModeService const&);
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 // vIndex: 0
39 virtual ~ModeService() /*override*/;
40
41 // vIndex: 1
42 virtual ::Scripting::Result<void> init() /*override*/;
43
44 // vIndex: 3
45 virtual ::Scripting::Result<void> quit() /*override*/;
46
47 // vIndex: 1
48 virtual ::Editor::Mode getMode() const /*override*/;
49
50 // vIndex: 2
51 virtual ::Scripting::Result<void> trySetMode(::Editor::Mode newMode) /*override*/;
52
53 // vIndex: 3
54 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
55 listenForModeChange(::std::function<void(::Editor::Mode, ::Editor::Mode)> func) /*override*/;
56
57 // vIndex: 7
58 virtual ::Scripting::Result<void> _doSwitchMode(::Editor::Mode) = 0;
59
60 // vIndex: 8
61 virtual void _handleModeChangedPayload(::Editor::Network::ModeChangedPayload const&) = 0;
62 // NOLINTEND
63
64public:
65 // destructor thunk
66 // NOLINTBEGIN
67 MCAPI void $dtor();
68 // NOLINTEND
69
70public:
71 // virtual function thunks
72 // NOLINTBEGIN
73 MCAPI ::Scripting::Result<void> $init();
74
75 MCAPI ::Scripting::Result<void> $quit();
76
77 MCFOLD ::Editor::Mode $getMode() const;
78
79 MCAPI ::Scripting::Result<void> $trySetMode(::Editor::Mode newMode);
80
81 MCFOLD ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
82 $listenForModeChange(::std::function<void(::Editor::Mode, ::Editor::Mode)> func);
83 // NOLINTEND
84
85public:
86 // vftables
87 // NOLINTBEGIN
88 MCAPI static void** $vftableForModeServiceProvider();
89
90 MCAPI static void** $vftableForIEditorService();
91 // NOLINTEND
92};
93
94} // namespace Editor::Services
Definition ModeChangedPayload.h:10
Definition IEditorService.h:11
Definition ModeServiceProvider.h:17
Definition ModeService.h:20
Definition Alias.h:14