LeviLamina
Loading...
Searching...
No Matches
PrefabStructurePositionCalculator.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/Mirror.h"
7#include "mc/util/Rotation.h"
8
9// auto generated forward declare list
10// clang-format off
11class BlockPos;
12class BoundingBox;
14class Vec3;
15namespace mce { class UUID; }
16// clang-format on
17
18namespace Editor::Prefabs {
19
20class PrefabStructurePositionCalculator {
21public:
22 // PrefabStructurePositionCalculator inner types declare
23 // clang-format off
25 // clang-format on
26
27 // PrefabStructurePositionCalculator inner types define
28 struct TemplateStructureInfo {
29 public:
30 // member variables
31 // NOLINTBEGIN
44 // NOLINTEND
45
46 public:
47 // prevent constructor by default
48 TemplateStructureInfo& operator=(TemplateStructureInfo const&);
49 TemplateStructureInfo(TemplateStructureInfo const&);
50 TemplateStructureInfo();
51
52 public:
53 // member functions
54 // NOLINTBEGIN
55 MCNAPI ::StructureSettings toStructureSettings() const;
56 // NOLINTEND
57 };
58
59public:
60 // member variables
61 // NOLINTBEGIN
67 // NOLINTEND
68
69public:
70 // prevent constructor by default
71 PrefabStructurePositionCalculator& operator=(PrefabStructurePositionCalculator const&);
72 PrefabStructurePositionCalculator(PrefabStructurePositionCalculator const&);
73
74public:
75 // member functions
76 // NOLINTBEGIN
78
79 MCNAPI ::BlockPos
80 _getPivotFromNormalizedOrigin(::Vec3 const& structureNormalizedOrigin, ::Vec3 const& structureSize);
81
82 MCNAPI void calculate();
83
84 MCNAPI void calculate(::Vec3 const& rootPosition, ::Mirror rootMirror, ::Rotation rootRotation);
85
87 ::mce::UUID const& id,
88 ::Vec3 const& instanceOffset,
89 ::Mirror instanceMirror,
90 ::Rotation instanceRotation,
91 ::Vec3 const& structureSize,
92 ::Vec3 const& structureOffset,
93 ::Vec3 const& structureNormalizedOrigin
94 );
95
96#ifdef LL_PLAT_C
97 MCNAPI ::BoundingBox getBoundingBox() const;
98
99 MCNAPI ::Editor::Prefabs::PrefabStructurePositionCalculator::TemplateStructureInfo const&
100 getStructureInfo(::mce::UUID const& id) const;
101#endif
102
103 MCNAPI ::std::vector<::Editor::Prefabs::PrefabStructurePositionCalculator::TemplateStructureInfo> const&
105
106#ifdef LL_PLAT_C
107 MCNAPI void removeStructureInfo(::mce::UUID const& id);
108#endif
109
111 // NOLINTEND
112
113public:
114 // static variables
115 // NOLINTBEGIN
116 MCNAPI static ::Editor::Prefabs::PrefabStructurePositionCalculator::TemplateStructureInfo& EMPTY_STRUCTURE_INFO();
117 // NOLINTEND
118
119public:
120 // constructor thunks
121 // NOLINTBEGIN
122 MCNAPI void* $ctor();
123 // NOLINTEND
124
125public:
126 // destructor thunk
127 // NOLINTBEGIN
128 MCNAPI void $dtor();
129 // NOLINTEND
130};
131
132} // namespace Editor::Prefabs
Definition BlockPos.h:21
Definition BoundingBox.h:13
MCAPI ::std::vector<::Editor::Prefabs::PrefabStructurePositionCalculator::TemplateStructureInfo > const & getStructureInfoList() const
MCAPI void calculate(::Vec3 const &rootPosition, ::Mirror rootMirror, ::Rotation rootRotation)
MCAPI void createOrUpdateStructureInfo(::mce::UUID const &id, ::Vec3 const &instanceOffset, ::Mirror instanceMirror, ::Rotation instanceRotation, ::Vec3 const &structureSize, ::Vec3 const &structureOffset, ::Vec3 const &structureNormalizedOrigin)
static MCAPI ::Editor::Prefabs::PrefabStructurePositionCalculator::TemplateStructureInfo & EMPTY_STRUCTURE_INFO()
MCAPI::BlockPos _getPivotFromNormalizedOrigin(::Vec3 const &structureNormalizedOrigin, ::Vec3 const &structureSize)
Definition StructureSettings.h:18
Definition Vec3.h:10
Definition UUID.h:7
Definition PrefabStructurePositionCalculator.h:28
Definition Alias.h:14