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_deprecated.h"
7#include "mc/editor/Mode.h"
8#include "mc/editor/serviceproviders/ModeServiceProvider.h"
9#include "mc/editor/services/IEditorService.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace Bedrock::PubSub { class Subscription; }
14namespace Editor { class ServiceProviderCollection; }
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&);
32 ModeService(ModeService const&);
33 ModeService();
34
35public:
36 // virtual functions
37 // NOLINTBEGIN
38 virtual ~ModeService() /*override*/;
39
40 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
41
42 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
43
44 virtual ::Editor::Mode getMode() const /*override*/;
45
46 virtual ::Scripting::Result_deprecated<void> trySetMode(::Editor::Mode newMode) /*override*/;
47
48 virtual ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
49 listenForModeChange(::std::function<void(::Editor::Mode, ::Editor::Mode)> func) /*override*/;
50
51 virtual ::Scripting::Result_deprecated<void> _doSwitchMode(::Editor::Mode) = 0;
52
53 virtual void _handleModeChangedPayload(::Editor::Network::ModeChangedPayload const&) = 0;
54 // NOLINTEND
55
56public:
57 // member functions
58 // NOLINTBEGIN
60 // NOLINTEND
61
62public:
63 // constructor thunks
64 // NOLINTBEGIN
66 // NOLINTEND
67
68public:
69 // destructor thunk
70 // NOLINTBEGIN
71 MCNAPI void $dtor();
72 // NOLINTEND
73
74public:
75 // virtual function thunks
76 // NOLINTBEGIN
77 MCNAPI ::Scripting::Result_deprecated<void> $init();
78
79 MCNAPI ::Scripting::Result_deprecated<void> $quit();
80
81 MCNAPI ::Editor::Mode $getMode() const;
82
83 MCNAPI ::Scripting::Result_deprecated<void> $trySetMode(::Editor::Mode newMode);
84
85 MCNAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription>
86 $listenForModeChange(::std::function<void(::Editor::Mode, ::Editor::Mode)> func);
87
88
89 // NOLINTEND
90
91public:
92 // vftables
93 // NOLINTBEGIN
94 MCNAPI static void** $vftableForModeServiceProvider();
95
96 MCNAPI static void** $vftableForIEditorService();
97 // NOLINTEND
98};
99
100} // namespace Editor::Services
Definition Subscription.h:10
Definition ModeChangedPayload.h:15
Definition ServiceProviderCollection.h:7
Definition IEditorService.h:11
Definition ModeServiceProvider.h:16
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI ModeService(::Editor::ServiceProviderCollection &providers)
MCAPI ::Scripting::Result_deprecated< void > $trySetMode(::Editor::Mode newMode)
MCAPI void * $ctor(::Editor::ServiceProviderCollection &providers)
MCAPI ::Scripting::Result_deprecated< void > $init()
static MCAPI void ** $vftableForModeServiceProvider()
static MCAPI void ** $vftableForIEditorService()
MCAPI::Editor::Mode $getMode() const
MCAPI ::Scripting::Result_deprecated<::Bedrock::PubSub::Subscription > $listenForModeChange(::std::function< void(::Editor::Mode, ::Editor::Mode)> func)
Definition Alias.h:14