LeviLamina
Loading...
Searching...
No Matches
ClipboardService.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/serviceproviders/ClipboardServiceProvider.h"
8#include "mc/editor/services/IEditorService.h"
9#include "mc/server/editor/services/structures/IStructureDataProvider.h"
10
11// auto generated forward declare list
12// clang-format off
13class BlockPos;
14class BlockVolumeBase;
16class Vec3;
17namespace Bedrock::PubSub { class Subscription; }
18namespace Editor { class EditorStructureTemplate; }
19namespace Editor { class RelativeVolumeListBlockVolume; }
20namespace Editor { class ServiceProviderCollection; }
21namespace Editor::Services { class ClipboardItem; }
22namespace Editor::Services { struct ClipboardWriteOptions; }
23namespace mce { class UUID; }
24// clang-format on
25
26namespace Editor::Services {
27
28class ClipboardService : public ::Editor::Services::IEditorService,
31public:
32 // member variables
33 // NOLINTBEGIN
38 // NOLINTEND
39
40public:
41 // prevent constructor by default
42 ClipboardService& operator=(ClipboardService const&);
43 ClipboardService(ClipboardService const&);
44 ClipboardService();
45
46public:
47 // virtual functions
48 // NOLINTBEGIN
49 virtual ~ClipboardService() /*override*/;
50
51 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
52
53 virtual ::Scripting::Result_deprecated<void> ready() /*override*/;
54
55 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
56
57 virtual ::std::string_view getServiceName() const /*override*/;
58
59 virtual ::mce::UUID const& getPrimaryItemId() /*override*/;
60
61 virtual ::mce::UUID const& create() /*override*/;
62
63 virtual bool destroy(::mce::UUID const& id) /*override*/;
64
65 virtual void setPrimaryItem(::mce::UUID const& id) /*override*/;
66
67 virtual ::Editor::Services::ClipboardItem* getPrimaryItem() /*override*/;
68
69 virtual ::Scripting::Result_deprecated<void>
70 readFromWorld(::mce::UUID const& itemId, ::Editor::RelativeVolumeListBlockVolume const& volume) /*override*/;
71
72 virtual ::Scripting::Result_deprecated<void>
73 readFromWorld(::mce::UUID const& itemId, ::BlockVolumeBase const& volume) /*override*/;
74
75 virtual ::Scripting::Result_deprecated<void> readFromEditorStructure(
76 ::mce::UUID const& itemId,
77 ::Editor::EditorStructureTemplate const& editorStructure
78 ) /*override*/;
79
80 virtual ::Scripting::Result_deprecated<bool> writeToWorld(
81 ::mce::UUID const& itemId,
82 ::BlockPos const& position,
84 ) const /*override*/;
85
86 virtual ::Scripting::Result_deprecated<::Editor::RelativeVolumeListBlockVolume> getPredictedWriteVolume(
87 ::mce::UUID const& itemId,
88 ::BlockPos const& position,
90 ) const /*override*/;
91
92 virtual ::Scripting::Result_deprecated<void> clear(::mce::UUID const& itemId) /*override*/;
93
94 virtual bool isEmpty(::mce::UUID const& itemId) const /*override*/;
95
96 virtual ::BlockPos getSize(::mce::UUID const& itemId) const /*override*/;
97
98 virtual ::Vec3 const& getNormalizedOrigin(::mce::UUID const& itemId) const /*override*/;
99
100 virtual ::Vec3 getOriginalWorldLocation(::mce::UUID const& itemId) const /*override*/;
101
102 virtual ::Bedrock::PubSub::Subscription
103 listenForClipboardItemChanges(::std::function<void(::mce::UUID const&, bool)> callback) /*override*/;
104
105 virtual bool hasStructureData(::mce::UUID const& id) const /*override*/;
106
107 virtual ::Scripting::Result_deprecated<::std::variant<
108 ::StructureTemplate const*,
110 ::std::shared_ptr<::StructureTemplate const>,
111 ::std::shared_ptr<::Editor::EditorStructureTemplate const>>>
112 getStructureData(::mce::UUID const& id) const /*override*/;
113 // NOLINTEND
114
115public:
116 // member functions
117 // NOLINTBEGIN
119
120 MCNAPI void _onItemChanged(::Editor::Services::ClipboardItem const& item) const;
121 // NOLINTEND
122
123public:
124 // constructor thunks
125 // NOLINTBEGIN
127 // NOLINTEND
128
129public:
130 // destructor thunk
131 // NOLINTBEGIN
132 MCNAPI void $dtor();
133 // NOLINTEND
134
135public:
136 // virtual function thunks
137 // NOLINTBEGIN
138 MCNAPI ::Scripting::Result_deprecated<void> $init();
139
140 MCNAPI ::Scripting::Result_deprecated<void> $ready();
141
142 MCNAPI ::Scripting::Result_deprecated<void> $quit();
143
144 MCNAPI ::std::string_view $getServiceName() const;
145
146 MCNAPI ::mce::UUID const& $getPrimaryItemId();
147
148 MCNAPI ::mce::UUID const& $create();
149
150 MCNAPI bool $destroy(::mce::UUID const& id);
151
152 MCNAPI void $setPrimaryItem(::mce::UUID const& id);
153
154 MCNAPI ::Editor::Services::ClipboardItem* $getPrimaryItem();
155
156 MCNAPI ::Scripting::Result_deprecated<void>
158
159 MCNAPI ::Scripting::Result_deprecated<void>
160 $readFromWorld(::mce::UUID const& itemId, ::BlockVolumeBase const& volume);
161
162 MCNAPI ::Scripting::Result_deprecated<void>
164
165 MCNAPI ::Scripting::Result_deprecated<bool> $writeToWorld(
166 ::mce::UUID const& itemId,
167 ::BlockPos const& position,
169 ) const;
170
171 MCNAPI ::Scripting::Result_deprecated<::Editor::RelativeVolumeListBlockVolume> $getPredictedWriteVolume(
172 ::mce::UUID const& itemId,
173 ::BlockPos const& position,
175 ) const;
176
177 MCNAPI ::Scripting::Result_deprecated<void> $clear(::mce::UUID const& itemId);
178
179 MCNAPI bool $isEmpty(::mce::UUID const& itemId) const;
180
181 MCNAPI ::BlockPos $getSize(::mce::UUID const& itemId) const;
182
183 MCNAPI ::Vec3 const& $getNormalizedOrigin(::mce::UUID const& itemId) const;
184
185 MCNAPI ::Vec3 $getOriginalWorldLocation(::mce::UUID const& itemId) const;
186
187 MCNAPI ::Bedrock::PubSub::Subscription
188 $listenForClipboardItemChanges(::std::function<void(::mce::UUID const&, bool)> callback);
189
190 MCNAPI bool $hasStructureData(::mce::UUID const& id) const;
191
192 MCNAPI ::Scripting::Result_deprecated<::std::variant<
193 ::StructureTemplate const*,
195 ::std::shared_ptr<::StructureTemplate const>,
196 ::std::shared_ptr<::Editor::EditorStructureTemplate const>>>
198
199
200 // NOLINTEND
201
202public:
203 // vftables
204 // NOLINTBEGIN
206
207 MCNAPI static void** $vftableForIEditorService();
208
209 MCNAPI static void** $vftableForIStructureDataProvider();
210 // NOLINTEND
211};
212
213} // namespace Editor::Services
Definition Subscription.h:10
Definition BlockPos.h:19
Definition BlockVolumeBase.h:13
Definition EditorStructureTemplate.h:27
Definition RelativeVolumeListBlockVolume.h:21
Definition ServiceProviderCollection.h:7
Definition ClipboardItem.h:17
Definition ClipboardServiceProvider.h:23
MCAPI::std::string_view $getServiceName() const
MCAPI ::Scripting::Result_deprecated< void > $init()
static MCAPI void ** $vftableForClipboardServiceProvider()
MCAPI::BlockPos $getSize(::mce::UUID const &itemId) const
MCAPI::Editor::Services::ClipboardItem * $getPrimaryItem()
MCAPI bool $hasStructureData(::mce::UUID const &id) const
MCAPI bool $destroy(::mce::UUID const &id)
MCAPI void * $ctor(::Editor::ServiceProviderCollection &providers)
MCAPI ::Scripting::Result_deprecated< void > $clear(::mce::UUID const &itemId)
MCAPI::Vec3 $getOriginalWorldLocation(::mce::UUID const &itemId) const
MCAPI::mce::UUID const & $create()
MCAPI ::Scripting::Result_deprecated< void > $readFromEditorStructure(::mce::UUID const &itemId, ::Editor::EditorStructureTemplate const &editorStructure)
MCAPI void _onItemChanged(::Editor::Services::ClipboardItem const &item) const
MCAPI void $setPrimaryItem(::mce::UUID const &id)
static MCAPI void ** $vftableForIEditorService()
MCAPI bool $isEmpty(::mce::UUID const &itemId) const
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI ClipboardService(::Editor::ServiceProviderCollection &providers)
MCAPI ::Scripting::Result_deprecated< bool > $writeToWorld(::mce::UUID const &itemId, ::BlockPos const &position, ::Editor::Services::ClipboardWriteOptions const *options) const
MCAPI ::Scripting::Result_deprecated< void > $readFromWorld(::mce::UUID const &itemId, ::Editor::RelativeVolumeListBlockVolume const &volume)
MCAPI::Vec3 const & $getNormalizedOrigin(::mce::UUID const &itemId) const
MCAPI ::Scripting::Result_deprecated< void > $ready()
MCAPI ::Scripting::Result_deprecated<::Editor::RelativeVolumeListBlockVolume > $getPredictedWriteVolume(::mce::UUID const &itemId, ::BlockPos const &position, ::Editor::Services::ClipboardWriteOptions const *options) const
MCAPI ::Scripting::Result_deprecated< void > $readFromWorld(::mce::UUID const &itemId, ::BlockVolumeBase const &volume)
MCAPI ::Scripting::Result_deprecated<::std::variant< ::StructureTemplate const *, ::Editor::EditorStructureTemplate const *, ::std::shared_ptr<::StructureTemplate const >, ::std::shared_ptr<::Editor::EditorStructureTemplate const > > > $getStructureData(::mce::UUID const &id) const
static MCAPI void ** $vftableForIStructureDataProvider()
MCAPI::mce::UUID const & $getPrimaryItemId()
MCAPI::Bedrock::PubSub::Subscription $listenForClipboardItemChanges(::std::function< void(::mce::UUID const &, bool)> callback)
Definition IEditorService.h:11
Definition IStructureDataProvider.h:17
Definition StructureTemplate.h:35
Definition Vec3.h:10
Definition UUID.h:7
Definition ClipboardWriteOptions.h:7
Definition Alias.h:14