LeviLamina
Loading...
Searching...
No Matches
EditorStructureTemplate.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/world/level/levelgen/structure/StructureTemplate.h"
8
9// auto generated forward declare list
10// clang-format off
11class Actor;
13class Block;
14class BlockPalette;
15class BlockPos;
16class BlockSource;
17class BlockVolumeBase;
18class BoundingBox;
19class CompoundTag;
22class Vec3;
23// clang-format on
24
25namespace Editor {
26
27class EditorStructureTemplate : public ::StructureTemplate {
28public:
29 // member variables
30 // NOLINTBEGIN
34 // NOLINTEND
35
36public:
37 // prevent constructor by default
38 EditorStructureTemplate& operator=(EditorStructureTemplate const&);
39 EditorStructureTemplate();
40
41public:
42 // virtual functions
43 // NOLINTBEGIN
44 virtual ~EditorStructureTemplate() /*override*/;
45
46 virtual void clear() /*override*/;
47
48 virtual bool load(::CompoundTag const& tag) /*override*/;
49
50 virtual ::std::unique_ptr<::CompoundTag> save() const /*override*/;
51
52 virtual ::BoundingBox
53 getTransformedBounds(::BlockPos loadPosition, ::StructureSettings const& structureSettings) const /*override*/;
54
55 virtual void fillEmpty(::BlockPos const& size) /*override*/;
56
57 virtual bool _allowReadBlock(::BlockPos const& position, ::Block const& block) const /*override*/;
58
59 virtual bool _allowReadActor(::Actor const& actor) const /*override*/;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
66
68
69 MCNAPI explicit EditorStructureTemplate(::std::string_view name);
70
71#ifdef LL_PLAT_C
72 MCNAPI EditorStructureTemplate(
73 ::StructureTemplate const& temp,
75 );
76#endif
77
79 ::BlockSource& region,
80 ::std::unique_ptr<::BaseBlockLocationIterator> locationIterator,
81 ::BlockPos const& posMin,
82 ::BlockPos const& size,
83 ::BlockPos const& structureOffset
84 );
85
87 ::BlockSource& region,
88 ::StructureSettings const& structureSettings,
89 ::BlockVolumeBase const& volume
90 );
91
93 ::BlockSource& region,
94 ::StructureSettings const& structureSettings,
95 ::std::unique_ptr<::BaseBlockLocationIterator> locationIterator,
96 ::BlockPos const& posMin,
97 ::BlockPos const& span
98 );
99
100#ifdef LL_PLAT_C
101 MCNAPI ::Editor::EditorStructureTemplate& operator=(::Editor::EditorStructureTemplate&&);
102#endif
103
105 ::BlockSource& region,
106 ::BlockPalette const& globalBlockPalette,
107 ::BoundingBox const& transformedBounds,
108 ::StructureSettings const& structureSettings
109 ) const;
110
111 MCNAPI bool setNormalizedOrigin(::Vec3 newOrigin);
112 // NOLINTEND
113
114public:
115 // constructor thunks
116 // NOLINTBEGIN
118
120
121 MCNAPI void* $ctor(::std::string_view name);
122
123#ifdef LL_PLAT_C
124 MCNAPI void* $ctor(
125 ::StructureTemplate const& temp,
127 );
128#endif
129 // NOLINTEND
130
131public:
132 // destructor thunk
133 // NOLINTBEGIN
134 MCNAPI void $dtor();
135 // NOLINTEND
136
137public:
138 // virtual function thunks
139 // NOLINTBEGIN
140 MCNAPI void $clear();
141
142 MCNAPI bool $load(::CompoundTag const& tag);
143
144 MCNAPI ::std::unique_ptr<::CompoundTag> $save() const;
145
146 MCNAPI ::BoundingBox
147 $getTransformedBounds(::BlockPos loadPosition, ::StructureSettings const& structureSettings) const;
148
149 MCNAPI void $fillEmpty(::BlockPos const& size);
150
151 MCNAPI bool $_allowReadBlock(::BlockPos const& position, ::Block const& block) const;
152
153 MCNAPI bool $_allowReadActor(::Actor const& actor) const;
154
155
156 // NOLINTEND
157
158public:
159 // vftables
160 // NOLINTBEGIN
161 MCNAPI static void** $vftable();
162 // NOLINTEND
163};
164
165} // namespace Editor
Definition Actor.h:106
Definition BaseBlockLocationIterator.h:8
Definition NonOwnerPointer.h:9
Definition BlockPalette.h:19
Definition BlockPos.h:19
Definition BlockSource.h:71
Definition BlockVolumeBase.h:16
Definition Block.h:43
Definition BoundingBox.h:13
Definition CompoundTag.h:23
Definition EditorStructureTemplate.h:27
MCAPI ::std::unique_ptr<::CompoundTag > $save() const
MCAPI void $fillEmpty(::BlockPos const &size)
MCAPI void * $ctor(::Editor::EditorStructureTemplate const &)
MCAPI EditorStructureTemplate(::Editor::EditorStructureTemplate const &)
MCAPI bool setNormalizedOrigin(::Vec3 newOrigin)
MCAPI bool $_allowReadBlock(::BlockPos const &position, ::Block const &block) const
MCAPI void editorFillFromWorld(::BlockSource &region, ::StructureSettings const &structureSettings, ::BlockVolumeBase const &volume)
MCAPI void * $ctor(::Editor::EditorStructureTemplate &&)
MCAPI EditorStructureTemplate(::Editor::EditorStructureTemplate &&)
MCAPI void * $ctor(::std::string_view name)
MCAPI void editorFillFromWorld(::BlockSource &region, ::StructureSettings const &structureSettings, ::std::unique_ptr<::BaseBlockLocationIterator > locationIterator, ::BlockPos const &posMin, ::BlockPos const &span)
MCAPI::BoundingBox $getTransformedBounds(::BlockPos loadPosition, ::StructureSettings const &structureSettings) const
MCAPI bool $load(::CompoundTag const &tag)
static MCAPI void ** $vftable()
MCAPI void _editorFillBlockInfo(::BlockSource &region, ::std::unique_ptr<::BaseBlockLocationIterator > locationIterator, ::BlockPos const &posMin, ::BlockPos const &size, ::BlockPos const &structureOffset)
MCAPI void placeStructureTemplateInWorldForEditor(::BlockSource &region, ::BlockPalette const &globalBlockPalette, ::BoundingBox const &transformedBounds, ::StructureSettings const &structureSettings) const
MCAPI bool $_allowReadActor(::Actor const &actor) const
MCAPI EditorStructureTemplate(::std::string_view name)
Definition IUnknownBlockTypeRegistry.h:14
Definition StructureSettings.h:18
Definition Vec3.h:10
Definition Alias.h:14