LeviLamina
Loading...
Searching...
No Matches
TransactionManagerServiceProvider.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
9// auto generated forward declare list
10// clang-format off
11class Actor;
12class BlockPos;
13class BlockVolumeBase;
14namespace Editor::Transactions { class TransactionContext; }
15// clang-format on
16
17namespace Editor::Services {
18
20public:
21 // virtual functions
22 // NOLINTBEGIN
23 // vIndex: 0
24 virtual ~TransactionManagerServiceProvider() = default;
25
26 // vIndex: 1
27 virtual void addTransaction(::std::unique_ptr<::Editor::Transactions::TransactionContext>) = 0;
28
29 // vIndex: 2
30 virtual void clearTransactions() = 0;
31
32 // vIndex: 3
33 virtual ::Scripting::Result_deprecated<void> undo() = 0;
34
35 // vIndex: 4
36 virtual ::Scripting::Result_deprecated<void> redo() = 0;
37
38 // vIndex: 5
39 virtual uint64 undoSize() const = 0;
40
41 // vIndex: 6
42 virtual uint64 redoSize() const = 0;
43
44 // vIndex: 7
45 virtual ::Scripting::Result_deprecated<bool> trackBlockChangeList(::std::vector<::BlockPos> const&) = 0;
46
47 // vIndex: 8
48 virtual ::Scripting::Result_deprecated<bool> trackBlockChangeArea(::BlockPos const&, ::BlockPos const&) = 0;
49
50 // vIndex: 9
51 virtual ::Scripting::Result_deprecated<bool> trackBlockChangeVolume(::BlockVolumeBase const&) = 0;
52
53 // vIndex: 10
54 virtual ::Scripting::Result_deprecated<bool>
55 addEntityOperation(::Actor*, ::Editor::Transactions::EntityOperation::OperationType const) = 0;
56
57 // vIndex: 11
58 virtual ::Scripting::Result_deprecated<int> commitTrackedChanges() = 0;
59
60 // vIndex: 12
61 virtual ::Scripting::Result_deprecated<int> discardTrackedChanges() = 0;
62
63 // vIndex: 13
64 virtual ::Scripting::Result_deprecated<bool> openTransaction(::std::string const& name) = 0;
65
66 // vIndex: 14
67 virtual ::Scripting::Result_deprecated<bool> commitOpenTransaction() = 0;
68
69 // vIndex: 15
70 virtual ::Scripting::Result_deprecated<bool> discardOpenTransaction() = 0;
71
72 // vIndex: 16
73 virtual ::Scripting::Result_deprecated<bool> addUserDefinedOperation(
74 ::std::string const&,
75 ::std::string const&,
76 ::std::function<::Scripting::Result_deprecated<void>(::std::string const&)>,
77 ::std::function<::Scripting::Result_deprecated<void>(::std::string const&)>
78 ) = 0;
79
80 // vIndex: 17
81 virtual uint64 pendingOperationsSize() const = 0;
82
83 // vIndex: 18
84 virtual bool hasOpenTransaction() const = 0;
85
86 // vIndex: 19
87 virtual void clearAllTransactionData() = 0;
88
89 // vIndex: 20
90 virtual bool isBusy() const = 0;
91 // NOLINTEND
92
93public:
94 // static variables
95 // NOLINTBEGIN
96 MCNAPI static ::std::add_lvalue_reference_t<char const[]> ERROR_BUSY_SERVICE();
97
98 MCNAPI static ::std::add_lvalue_reference_t<char const[]> ERROR_NO_OPEN_TRANSACTION();
99 // NOLINTEND
100
101public:
102 // virtual function thunks
103 // NOLINTBEGIN
104
105 // NOLINTEND
106};
107
108} // namespace Editor::Services
Definition Actor.h:103
Definition BlockPos.h:18
Definition BlockVolumeBase.h:13
Definition TransactionManagerServiceProvider.h:19
static MCAPI ::std::add_lvalue_reference_t< char const[]> ERROR_NO_OPEN_TRANSACTION()
static MCAPI ::std::add_lvalue_reference_t< char const[]> ERROR_BUSY_SERVICE()
Definition Result_deprecated.h:8
Definition TransactionContext.h:5