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
72 ::BlockSource& region,
73 ::std::unique_ptr<::BaseBlockLocationIterator> locationIterator,
74 ::BlockPos const& posMin,
75 ::BlockPos const& size,
76 ::BlockPos const& structureOffset
77 );
78
80 ::BlockSource& region,
81 ::StructureSettings const& structureSettings,
82 ::BlockVolumeBase const& volume
83 );
84
86 ::BlockSource& region,
87 ::StructureSettings const& structureSettings,
88 ::std::unique_ptr<::BaseBlockLocationIterator> locationIterator,
89 ::BlockPos const& posMin,
90 ::BlockPos const& span
91 );
92
94 ::BlockSource& region,
95 ::BlockPalette const& globalBlockPalette,
96 ::BoundingBox const& transformedBounds,
97 ::StructureSettings const& structureSettings
98 ) const;
99
100 MCNAPI bool setNormalizedOrigin(::Vec3 newOrigin);
101 // NOLINTEND
102
103public:
104 // constructor thunks
105 // NOLINTBEGIN
107
109
110 MCNAPI void* $ctor(::std::string_view name);
111
112 MCNAPI_C void* $ctor(
113 ::StructureTemplate const& temp,
115 );
116 // NOLINTEND
117
118public:
119 // destructor thunk
120 // NOLINTBEGIN
121 MCNAPI void $dtor();
122 // NOLINTEND
123
124public:
125 // virtual function thunks
126 // NOLINTBEGIN
127 MCNAPI void $clear();
128
129 MCNAPI bool $load(::CompoundTag const& tag);
130
131 MCNAPI ::std::unique_ptr<::CompoundTag> $save() const;
132
133 MCNAPI ::BoundingBox
134 $getTransformedBounds(::BlockPos loadPosition, ::StructureSettings const& structureSettings) const;
135
136 MCNAPI void $fillEmpty(::BlockPos const& size);
137
138 MCNAPI bool $_allowReadBlock(::BlockPos const& position, ::Block const& block) const;
139
140 MCNAPI bool $_allowReadActor(::Actor const& actor) const;
141
142
143 // NOLINTEND
144
145public:
146 // vftables
147 // NOLINTBEGIN
148 MCNAPI static void** $vftable();
149 // NOLINTEND
150};
151
152} // namespace Editor
Definition Actor.h:105
Definition BaseBlockLocationIterator.h:8
Definition NonOwnerPointer.h:9
Definition BlockPalette.h:19
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition BlockVolumeBase.h:13
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