LeviLamina
Loading...
Searching...
No Matches
TransactionManagerService.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/EntityOperation.h"
7#include "mc/deps/scripting/runtime/Result_deprecated.h"
8#include "mc/editor/services/IEditorService.h"
9#include "mc/server/editor/serviceproviders/TransactionManagerServiceProvider.h"
10#include "mc/world/events/EventListenerDispatcher.h"
11#include "mc/world/events/EventResult.h"
12#include "mc/world/events/PlayerEventListener.h"
13
14// auto generated forward declare list
15// clang-format off
16class Actor;
17class BlockPos;
18class BlockSource;
19class BlockVolumeBase;
21namespace Editor::Network { class RedoOperationPayload; }
22namespace Editor::Network { class UndoOperationPayload; }
23namespace Editor::Transactions { class TransactionContext; }
24// clang-format on
25
26namespace Editor::Services {
27
30 public ::EventListenerDispatcher<::PlayerEventListener> {
31public:
32 // member variables
33 // NOLINTBEGIN
41 // NOLINTEND
42
43public:
44 // prevent constructor by default
48
49public:
50 // virtual functions
51 // NOLINTBEGIN
52 // vIndex: 53
53 virtual ::EventResult onEvent(::PlayerDimensionChangeBeforeEvent const&) /*override*/;
54
55 // vIndex: 0
56 virtual ~TransactionManagerService() /*override*/;
57
58 // vIndex: 1
59 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
60
61 // vIndex: 2
62 virtual ::Scripting::Result_deprecated<void> ready() /*override*/;
63
64 // vIndex: 3
65 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
66
67 // vIndex: 4
68 virtual ::std::string_view getServiceName() const /*override*/;
69
70 // vIndex: 1
71 virtual void
72 addTransaction(::std::unique_ptr<::Editor::Transactions::TransactionContext> transactionContext) /*override*/;
73
74 // vIndex: 2
75 virtual void clearTransactions() /*override*/;
76
77 // vIndex: 3
78 virtual ::Scripting::Result_deprecated<void> undo() /*override*/;
79
80 // vIndex: 4
81 virtual ::Scripting::Result_deprecated<void> redo() /*override*/;
82
83 // vIndex: 5
84 virtual uint64 undoSize() const /*override*/;
85
86 // vIndex: 6
87 virtual uint64 redoSize() const /*override*/;
88
89 // vIndex: 7
90 virtual ::Scripting::Result_deprecated<bool>
91 trackBlockChangeList(::std::vector<::BlockPos> const& locations) /*override*/;
92
93 // vIndex: 8
94 virtual ::Scripting::Result_deprecated<bool>
95 trackBlockChangeArea(::BlockPos const& from, ::BlockPos const& to) /*override*/;
96
97 // vIndex: 9
98 virtual ::Scripting::Result_deprecated<bool> trackBlockChangeVolume(::BlockVolumeBase const& volume) /*override*/;
99
100 // vIndex: 10
101 virtual ::Scripting::Result_deprecated<bool>
102 addEntityOperation(::Actor* entity, ::Editor::Transactions::EntityOperation::OperationType type) /*override*/;
103
104 // vIndex: 11
105 virtual ::Scripting::Result_deprecated<int> commitTrackedChanges() /*override*/;
106
107 // vIndex: 12
108 virtual ::Scripting::Result_deprecated<int> discardTrackedChanges() /*override*/;
109
110 // vIndex: 13
111 virtual ::Scripting::Result_deprecated<bool> openTransaction(::std::string const& name) /*override*/;
112
113 // vIndex: 14
114 virtual ::Scripting::Result_deprecated<bool> commitOpenTransaction() /*override*/;
115
116 // vIndex: 15
117 virtual ::Scripting::Result_deprecated<bool> discardOpenTransaction() /*override*/;
118
119 // vIndex: 16
120 virtual ::Scripting::Result_deprecated<bool> addUserDefinedOperation(
121 ::std::string const& payload,
122 ::std::string const& operationName,
123 ::std::function<::Scripting::Result_deprecated<void>(::std::string const&)> fnUndo,
124 ::std::function<::Scripting::Result_deprecated<void>(::std::string const&)> fnRedo
125 ) /*override*/;
126
127 // vIndex: 17
128 virtual uint64 pendingOperationsSize() const /*override*/;
129
130 // vIndex: 18
131 virtual bool hasOpenTransaction() const /*override*/;
132
133 // vIndex: 19
134 virtual void clearAllTransactionData() /*override*/;
135
136 // vIndex: 20
137 virtual bool isBusy() const /*override*/;
138 // NOLINTEND
139
140public:
141 // member functions
142 // NOLINTBEGIN
144
146
147 MCNAPI ::Scripting::Result_deprecated<void> _redo();
148
149 MCNAPI ::Scripting::Result_deprecated<bool>
150 _trackBlockChanges(::BlockSource const& region, ::std::vector<::BlockPos> const& locations);
151
152 MCNAPI ::Scripting::Result_deprecated<void> _undo();
153 // NOLINTEND
154
155public:
156 // destructor thunk
157 // NOLINTBEGIN
158 MCNAPI void $dtor();
159 // NOLINTEND
160
161public:
162 // virtual function thunks
163 // NOLINTBEGIN
164 MCNAPI ::EventResult $onEvent(::PlayerDimensionChangeBeforeEvent const&);
165
166 MCNAPI ::Scripting::Result_deprecated<void> $init();
167
168 MCNAPI ::Scripting::Result_deprecated<void> $ready();
169
170 MCNAPI ::Scripting::Result_deprecated<void> $quit();
171
172 MCNAPI ::std::string_view $getServiceName() const;
173
174 MCNAPI void $addTransaction(::std::unique_ptr<::Editor::Transactions::TransactionContext> transactionContext);
175
176 MCNAPI void $clearTransactions();
177
178 MCNAPI ::Scripting::Result_deprecated<void> $undo();
179
180 MCNAPI ::Scripting::Result_deprecated<void> $redo();
181
182 MCNAPI uint64 $undoSize() const;
183
184 MCNAPI uint64 $redoSize() const;
185
186 MCNAPI ::Scripting::Result_deprecated<bool> $trackBlockChangeList(::std::vector<::BlockPos> const& locations);
187
188 MCNAPI ::Scripting::Result_deprecated<bool> $trackBlockChangeArea(::BlockPos const& from, ::BlockPos const& to);
189
190 MCNAPI ::Scripting::Result_deprecated<bool> $trackBlockChangeVolume(::BlockVolumeBase const& volume);
191
192 MCNAPI ::Scripting::Result_deprecated<bool>
193 $addEntityOperation(::Actor* entity, ::Editor::Transactions::EntityOperation::OperationType type);
194
195 MCNAPI ::Scripting::Result_deprecated<int> $commitTrackedChanges();
196
197 MCNAPI ::Scripting::Result_deprecated<int> $discardTrackedChanges();
198
199 MCNAPI ::Scripting::Result_deprecated<bool> $openTransaction(::std::string const& name);
200
201 MCNAPI ::Scripting::Result_deprecated<bool> $commitOpenTransaction();
202
203 MCNAPI ::Scripting::Result_deprecated<bool> $discardOpenTransaction();
204
205 MCNAPI ::Scripting::Result_deprecated<bool> $addUserDefinedOperation(
206 ::std::string const& payload,
207 ::std::string const& operationName,
208 ::std::function<::Scripting::Result_deprecated<void>(::std::string const&)> fnUndo,
209 ::std::function<::Scripting::Result_deprecated<void>(::std::string const&)> fnRedo
210 );
211
212 MCNAPI uint64 $pendingOperationsSize() const;
213
214 MCNAPI bool $hasOpenTransaction() const;
215
217
218 MCNAPI bool $isBusy() const;
219 // NOLINTEND
220
221public:
222 // vftables
223 // NOLINTBEGIN
225
226 MCNAPI static void** $vftableForIEditorService();
227
229 // NOLINTEND
230};
231
232} // namespace Editor::Services
Definition Actor.h:103
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition BlockVolumeBase.h:13
Definition RedoOperationPayload.h:10
Definition UndoOperationPayload.h:10
Definition IEditorService.h:11
Definition TransactionManagerServiceProvider.h:19
Definition TransactionManagerService.h:30
MCAPI ::Scripting::Result_deprecated< bool > $trackBlockChangeVolume(::BlockVolumeBase const &volume)
static MCAPI void ** $vftableForTransactionManagerServiceProvider()
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI ::Scripting::Result_deprecated< bool > $discardOpenTransaction()
MCAPI ::Scripting::Result_deprecated< int > $commitTrackedChanges()
MCAPI::EventResult $onEvent(::PlayerDimensionChangeBeforeEvent const &)
MCAPI::std::string_view $getServiceName() const
MCAPI ::Scripting::Result_deprecated< bool > $addEntityOperation(::Actor *entity, ::Editor::Transactions::EntityOperation::OperationType type)
MCAPI void $addTransaction(::std::unique_ptr<::Editor::Transactions::TransactionContext > transactionContext)
static MCAPI void ** $vftableForEventListenerDispatcher()
MCAPI void _handleRedoMessage(::Editor::Network::RedoOperationPayload const &)
static MCAPI void ** $vftableForIEditorService()
MCAPI ::Scripting::Result_deprecated< int > $discardTrackedChanges()
MCAPI ::Scripting::Result_deprecated< bool > $trackBlockChangeArea(::BlockPos const &from, ::BlockPos const &to)
MCAPI ::Scripting::Result_deprecated< void > _undo()
MCAPI ::Scripting::Result_deprecated< void > $ready()
MCAPI ::Scripting::Result_deprecated< bool > $commitOpenTransaction()
MCAPI ::Scripting::Result_deprecated< bool > $openTransaction(::std::string const &name)
MCAPI ::Scripting::Result_deprecated< void > $redo()
MCAPI ::Scripting::Result_deprecated< void > _redo()
MCAPI ::Scripting::Result_deprecated< bool > $addUserDefinedOperation(::std::string const &payload, ::std::string const &operationName, ::std::function<::Scripting::Result_deprecated< void >(::std::string const &)> fnUndo, ::std::function<::Scripting::Result_deprecated< void >(::std::string const &)> fnRedo)
MCAPI ::Scripting::Result_deprecated< void > $undo()
MCAPI ::Scripting::Result_deprecated< bool > _trackBlockChanges(::BlockSource const &region, ::std::vector<::BlockPos > const &locations)
MCAPI void _handleUndoMessage(::Editor::Network::UndoOperationPayload const &)
MCAPI ::Scripting::Result_deprecated< bool > $trackBlockChangeList(::std::vector<::BlockPos > const &locations)
MCAPI ::Scripting::Result_deprecated< void > $init()
Definition EventListenerDispatcher.h:6
Definition Result_deprecated.h:8
Definition TransactionContext.h:5
Definition PlayerDimensionChangeBeforeEvent.h:16
Definition Alias.h:14