LeviLamina
Loading...
Searching...
No Matches
CommonBlockUtilityService.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/ContiguousSelectionType.h"
7#include "mc/deps/scripting/runtime/Result_deprecated.h"
8#include "mc/editor/serviceproviders/CommonBlockUtilityServiceProvider.h"
9#include "mc/editor/services/IEditorService.h"
10#include "mc/editor/services/PayloadStoreHelper.h"
11#include "mc/legacy/facing/Name.h"
12
13// auto generated forward declare list
14// clang-format off
15class AABB;
16class Block;
17class BlockSource;
18class BlockVolumeBase;
19class BoundingBox;
20class ChunkPos;
22class Dimension;
23class Vec3;
24namespace Editor { class RelativeVolumeListBlockVolume; }
25namespace Editor::BlockMask { class BlockMaskList; }
26// clang-format on
27
28namespace Editor::BlockUtils {
29
33public:
34 // member variables
35 // NOLINTBEGIN
38 // NOLINTEND
39
40public:
41 // prevent constructor by default
45
46public:
47 // virtual functions
48 // NOLINTBEGIN
49 // vIndex: 0
50 virtual ~CommonBlockUtilityService() /*override*/;
51
52 // vIndex: 1
53 virtual ::Scripting::Result_deprecated<void> init() /*override*/;
54
55 // vIndex: 2
56 virtual ::Scripting::Result_deprecated<void> ready() /*override*/;
57
58 // vIndex: 3
59 virtual ::Scripting::Result_deprecated<void> quit() /*override*/;
60
61 // vIndex: 4
62 virtual ::std::string_view getServiceName() const /*override*/;
63
64 // vIndex: 1
65 virtual ::std::set<::ChunkPos> getChunksFromAABB(::AABB const& aabb) const /*override*/;
66
67 // vIndex: 2
68 virtual bool isChunkLoaded(::ChunkPos const& pos) const /*override*/;
69
70 // vIndex: 3
71 virtual bool isChunkFullyLoaded(::ChunkPos const& pos) const /*override*/;
72
73 // vIndex: 4
74 virtual bool areChunksLoaded(::std::set<::ChunkPos> const& chunks) const /*override*/;
75
76 // vIndex: 5
77 virtual bool isAreaLoaded(::AABB const& aabb) const /*override*/;
78
79 // vIndex: 6
80 virtual ::Editor::RelativeVolumeListBlockVolume trimVolumeToFitContents(
81 ::std::variant<::BlockVolumeBase const*, ::Editor::RelativeVolumeListBlockVolume const*> const inVolume,
82 bool retainMarqueeAfterTrimming,
83 bool ignoreLiquid,
84 bool ignoreNoCollision,
86 ) /*override*/;
87
88 // vIndex: 7
89 virtual ::Editor::RelativeVolumeListBlockVolume shrinkWrapVolume(
90 ::std::variant<::BlockVolumeBase const*, ::Editor::RelativeVolumeListBlockVolume const*> const
91 ) /*override*/;
92
93 // vIndex: 8
94 virtual bool isLocationInsideDimensionBounds(
95 ::std::variant<
96 ::BlockVolumeBase const*,
98 ::Vec3 const*,
99 ::BoundingBox const*> const test
100 ) /*override*/;
101
102 // vIndex: 12
103 virtual ::Vec3 getDimensionMinLocation() const /*override*/;
104
105 // vIndex: 13
106 virtual ::Vec3 getDimensionMaxLocation() const /*override*/;
107
108 // vIndex: 14
109 virtual ::BoundingBox getDimensionLocationBoundingBox() const /*override*/;
110
111 // vIndex: 9
112 virtual ::CompoundBlockVolume getContiguousSelection(
113 int const size,
114 ::Facing::Name const& selectionDirection,
115 ::Vec3 const& startingLocation,
116 bool const isFace,
117 int const fullSelectionToleranceLevel,
118 bool const checkForAdjacentFaceBlocks,
119 ::Editor::BlockUtils::ContiguousSelectionType const& contiguousSelectionType,
120 ::std::vector<::std::string> const& contiguousSelectionBlockList
121 ) const /*override*/;
122
123 // vIndex: 10
124 virtual bool areBlocksContiguous(
125 ::Editor::BlockUtils::ContiguousSelectionType const& contiguousSelectionType,
126 ::Block const& blockToTest,
127 ::Block const& blockToFollow,
128 ::std::vector<::std::string> const& allowList
129 ) const /*override*/;
130
131 // vIndex: 11
132 virtual ::Vec3 getDeltaFromDirection(::Facing::Name const& selectionDirection) const /*override*/;
133
134 // vIndex: 7
135 virtual ::Scripting::Result_deprecated<void> _implInit() = 0;
136
137 // vIndex: 8
138 virtual ::Scripting::Result_deprecated<void> _implReady() = 0;
139
140 // vIndex: 9
141 virtual ::Scripting::Result_deprecated<void> _implQuit() = 0;
142
143 // vIndex: 15
144 virtual ::AABB getBoundForContiguousSelection(
145 ::Vec3 const& initialLocation,
146 ::Facing::Name const& selectionDirection,
147 int const size,
148 bool const isFace
149 ) const /*override*/;
150
151 // vIndex: 16
152 virtual bool isBlockExposedInDirection(
153 ::Dimension const& dimension,
154 ::Vec3 const& targetLocation,
155 ::Facing::Name const& direction
156 ) const /*override*/;
157
158 // vIndex: 17
159 virtual bool isSameBlockType(::Block const& blockA, ::Block const& blockB) const /*override*/;
160
161 // vIndex: 18
162 virtual bool isSameBlockAndProperties(::Block const& blockA, ::Block const& blockB) const /*override*/;
163
164 // vIndex: 19
165 virtual bool isBlockTypeInSelectionList(::Block const& block, ::std::vector<::std::string> const& allowList) const
166 /*override*/;
167 // NOLINTEND
168
169public:
170 // member functions
171 // NOLINTBEGIN
172 MCNAPI ::BlockSource& _getBlockSource() const;
173 // NOLINTEND
174
175public:
176 // destructor thunk
177 // NOLINTBEGIN
178 MCNAPI void $dtor();
179 // NOLINTEND
180
181public:
182 // virtual function thunks
183 // NOLINTBEGIN
184 MCNAPI ::Scripting::Result_deprecated<void> $init();
185
186 MCNAPI ::Scripting::Result_deprecated<void> $ready();
187
188 MCNAPI ::Scripting::Result_deprecated<void> $quit();
189
190 MCNAPI ::std::string_view $getServiceName() const;
191
192 MCNAPI ::std::set<::ChunkPos> $getChunksFromAABB(::AABB const& aabb) const;
193
194 MCNAPI bool $isChunkLoaded(::ChunkPos const& pos) const;
195
196 MCNAPI bool $isChunkFullyLoaded(::ChunkPos const& pos) const;
197
198 MCNAPI bool $areChunksLoaded(::std::set<::ChunkPos> const& chunks) const;
199
200 MCNAPI bool $isAreaLoaded(::AABB const& aabb) const;
201
202 MCNAPI ::Editor::RelativeVolumeListBlockVolume $trimVolumeToFitContents(
203 ::std::variant<::BlockVolumeBase const*, ::Editor::RelativeVolumeListBlockVolume const*> const inVolume,
204 bool retainMarqueeAfterTrimming,
205 bool ignoreLiquid,
206 bool ignoreNoCollision,
208 );
209
210 MCNAPI ::Editor::RelativeVolumeListBlockVolume
211 $shrinkWrapVolume(::std::variant<::BlockVolumeBase const*, ::Editor::RelativeVolumeListBlockVolume const*> const);
212
214 ::std::variant<
215 ::BlockVolumeBase const*,
217 ::Vec3 const*,
218 ::BoundingBox const*> const test
219 );
220
221 MCNAPI ::Vec3 $getDimensionMinLocation() const;
222
223 MCNAPI ::Vec3 $getDimensionMaxLocation() const;
224
225 MCNAPI ::BoundingBox $getDimensionLocationBoundingBox() const;
226
227 MCNAPI ::CompoundBlockVolume $getContiguousSelection(
228 int const size,
229 ::Facing::Name const& selectionDirection,
230 ::Vec3 const& startingLocation,
231 bool const isFace,
232 int const fullSelectionToleranceLevel,
233 bool const checkForAdjacentFaceBlocks,
234 ::Editor::BlockUtils::ContiguousSelectionType const& contiguousSelectionType,
235 ::std::vector<::std::string> const& contiguousSelectionBlockList
236 ) const;
237
239 ::Editor::BlockUtils::ContiguousSelectionType const& contiguousSelectionType,
240 ::Block const& blockToTest,
241 ::Block const& blockToFollow,
242 ::std::vector<::std::string> const& allowList
243 ) const;
244
245 MCNAPI ::Vec3 $getDeltaFromDirection(::Facing::Name const& selectionDirection) const;
246
248 ::Vec3 const& initialLocation,
249 ::Facing::Name const& selectionDirection,
250 int const size,
251 bool const isFace
252 ) const;
253
255 ::Dimension const& dimension,
256 ::Vec3 const& targetLocation,
257 ::Facing::Name const& direction
258 ) const;
259
260 MCNAPI bool $isSameBlockType(::Block const& blockA, ::Block const& blockB) const;
261
262 MCNAPI bool $isSameBlockAndProperties(::Block const& blockA, ::Block const& blockB) const;
263
264 MCNAPI bool $isBlockTypeInSelectionList(::Block const& block, ::std::vector<::std::string> const& allowList) const;
265 // NOLINTEND
266
267public:
268 // vftables
269 // NOLINTBEGIN
270 MCNAPI static void** $vftableForIEditorService();
271
273 // NOLINTEND
274};
275
276} // namespace Editor::BlockUtils
Definition AABB.h:18
Definition BlockSource.h:67
Definition BlockVolumeBase.h:13
Definition Block.h:38
Definition BoundingBox.h:13
Definition ChunkPos.h:11
Definition CompoundBlockVolume.h:16
Definition Dimension.h:83
Definition BlockMaskList.h:7
Definition CommonBlockUtilityServiceProvider.h:25
Definition CommonBlockUtilityService.h:32
MCAPI::CompoundBlockVolume $getContiguousSelection(int const size, ::Facing::Name const &selectionDirection, ::Vec3 const &startingLocation, bool const isFace, int const fullSelectionToleranceLevel, bool const checkForAdjacentFaceBlocks, ::Editor::BlockUtils::ContiguousSelectionType const &contiguousSelectionType, ::std::vector<::std::string > const &contiguousSelectionBlockList) const
MCAPI bool $isBlockExposedInDirection(::Dimension const &dimension, ::Vec3 const &targetLocation, ::Facing::Name const &direction) const
MCAPI::BoundingBox $getDimensionLocationBoundingBox() const
static MCAPI void ** $vftableForCommonBlockUtilityServiceProvider()
MCAPI::Editor::RelativeVolumeListBlockVolume $trimVolumeToFitContents(::std::variant<::BlockVolumeBase const *, ::Editor::RelativeVolumeListBlockVolume const * > const inVolume, bool retainMarqueeAfterTrimming, bool ignoreLiquid, bool ignoreNoCollision, ::Editor::BlockMask::BlockMaskList const &blockMask)
MCAPI::BlockSource & _getBlockSource() const
static MCAPI void ** $vftableForIEditorService()
MCAPI ::Scripting::Result_deprecated< void > $init()
MCAPI::Vec3 $getDeltaFromDirection(::Facing::Name const &selectionDirection) const
MCAPI ::Scripting::Result_deprecated< void > $quit()
MCAPI bool $areChunksLoaded(::std::set<::ChunkPos > const &chunks) const
MCAPI ::std::set<::ChunkPos > $getChunksFromAABB(::AABB const &aabb) const
MCAPI bool $isLocationInsideDimensionBounds(::std::variant< ::BlockVolumeBase const *, ::Editor::RelativeVolumeListBlockVolume const *, ::Vec3 const *, ::BoundingBox const * > const test)
MCAPI bool $isSameBlockType(::Block const &blockA, ::Block const &blockB) const
MCAPI::std::string_view $getServiceName() const
MCAPI bool $areBlocksContiguous(::Editor::BlockUtils::ContiguousSelectionType const &contiguousSelectionType, ::Block const &blockToTest, ::Block const &blockToFollow, ::std::vector<::std::string > const &allowList) const
MCAPI bool $isSameBlockAndProperties(::Block const &blockA, ::Block const &blockB) const
MCAPI bool $isChunkFullyLoaded(::ChunkPos const &pos) const
MCAPI ::Scripting::Result_deprecated< void > $ready()
MCAPI bool $isChunkLoaded(::ChunkPos const &pos) const
MCAPI bool $isAreaLoaded(::AABB const &aabb) const
MCAPI::AABB $getBoundForContiguousSelection(::Vec3 const &initialLocation, ::Facing::Name const &selectionDirection, int const size, bool const isFace) const
MCAPI::Editor::RelativeVolumeListBlockVolume $shrinkWrapVolume(::std::variant<::BlockVolumeBase const *, ::Editor::RelativeVolumeListBlockVolume const * > const)
MCAPI bool $isBlockTypeInSelectionList(::Block const &block, ::std::vector<::std::string > const &allowList) const
Definition RelativeVolumeListBlockVolume.h:21
Definition IEditorService.h:11
Definition PayloadStoreHelper.h:7
Definition Vec3.h:10
Definition Alias.h:14