LeviLamina
Loading...
Searching...
No Matches
SimpleBlockVolume.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/BlockVolumeBase.h"
7
8// auto generated forward declare list
9// clang-format off
11class BlockPos;
12class BoundingBox;
13class ChunkPos;
14namespace cereal { struct ReflectionCtx; }
15// clang-format on
16
18public:
19 // SimpleBlockVolume inner types define
20 enum class IntersectionResult : int {
21 Disjoint = 0,
22 Contains = 1,
23 Intersects = 2,
24 };
25
26 enum class CornerIndex : uchar {
27 FrontBottomLeft = 0,
28 BackBottomLeft = 1,
29 FrontTopLeft = 2,
30 BackTopLeft = 3,
31 FrontBottomRight = 4,
32 BackBottomRight = 5,
33 FrontTopRight = 6,
34 BackTopRight = 7,
35 };
36
37public:
38 // member variables
39 // NOLINTBEGIN
42 // NOLINTEND
43
44public:
45 // prevent constructor by default
46 SimpleBlockVolume& operator=(SimpleBlockVolume const&);
49
50public:
51 // virtual functions
52 // NOLINTBEGIN
53 // vIndex: 2
54 virtual ::BlockPos getMin() const /*override*/;
55
56 // vIndex: 3
57 virtual ::BlockPos getMax() const /*override*/;
58
59 // vIndex: 1
60 virtual ::BoundingBox getBoundingBox() const /*override*/;
61
62 // vIndex: 4
63 virtual ::glm::ivec3 getSpan() const /*override*/;
64
65 // vIndex: 5
66 virtual int getCapacity() const /*override*/;
67
68 // vIndex: 6
69 virtual bool isInside(::BlockPos const& pos) const /*override*/;
70
71 // vIndex: 7
72 virtual void translate(::BlockPos const& delta) /*override*/;
73
74 // vIndex: 8
75 virtual void forEach(::std::function<bool(::BlockPos const&)> callback) const /*override*/;
76
77 // vIndex: 9
78 virtual ::std::set<::ChunkPos> getChunks() const /*override*/;
79
80 // vIndex: 10
81 virtual ::std::unordered_set<::BlockPos> getFlattenedBlockPositions() const /*override*/;
82
83 // vIndex: 11
84 virtual ::std::unique_ptr<::BaseBlockLocationIterator> getIterator() const /*override*/;
85
86 // vIndex: 0
87 virtual ~SimpleBlockVolume() /*override*/;
88 // NOLINTEND
89
90public:
91 // member functions
92 // NOLINTBEGIN
93 MCNAPI bool doesAreaTouchFaces(::BlockPos const& min, ::BlockPos const& max) const;
94
95 MCNAPI ::SimpleBlockVolume::IntersectionResult intersects(::SimpleBlockVolume const& other) const;
96 // NOLINTEND
97
98public:
99 // static functions
100 // NOLINTBEGIN
102 // NOLINTEND
103
104public:
105 // destructor thunk
106 // NOLINTBEGIN
107 MCNAPI void $dtor();
108 // NOLINTEND
109
110public:
111 // virtual function thunks
112 // NOLINTBEGIN
113 MCNAPI ::BlockPos $getMin() const;
114
115 MCNAPI ::BlockPos $getMax() const;
116
117 MCNAPI ::BoundingBox $getBoundingBox() const;
118
119 MCNAPI ::glm::ivec3 $getSpan() const;
120
121 MCNAPI int $getCapacity() const;
122
123 MCNAPI bool $isInside(::BlockPos const& pos) const;
124
125 MCNAPI void $translate(::BlockPos const& delta);
126
127 MCNAPI void $forEach(::std::function<bool(::BlockPos const&)> callback) const;
128
129 MCNAPI ::std::set<::ChunkPos> $getChunks() const;
130
131 MCNAPI ::std::unordered_set<::BlockPos> $getFlattenedBlockPositions() const;
132
133 MCNAPI ::std::unique_ptr<::BaseBlockLocationIterator> $getIterator() const;
134 // NOLINTEND
135
136public:
137 // vftables
138 // NOLINTBEGIN
139 MCNAPI static void** $vftable();
140 // NOLINTEND
141};
Definition BaseBlockLocationIterator.h:10
Definition BlockPos.h:18
Definition BlockVolumeBase.h:13
Definition BoundingBox.h:13
Definition ChunkPos.h:11
Definition SimpleBlockVolume.h:17
MCAPI::SimpleBlockVolume::IntersectionResult intersects(::SimpleBlockVolume const &other) const
MCAPI::BlockPos $getMin() const
MCAPI void $translate(::BlockPos const &delta)
static MCAPI void ** $vftable()
MCAPI bool doesAreaTouchFaces(::BlockPos const &min, ::BlockPos const &max) const
MCAPI int $getCapacity() const
static MCAPI void cerealBindTypes(::cereal::ReflectionCtx &ctx)
MCAPI void $forEach(::std::function< bool(::BlockPos const &)> callback) const
MCAPI::BlockPos $getMax() const
MCAPI bool $isInside(::BlockPos const &pos) const
MCAPI ::std::set<::ChunkPos > $getChunks() const
MCAPI ::std::unordered_set<::BlockPos > $getFlattenedBlockPositions() const
MCAPI ::std::unique_ptr<::BaseBlockLocationIterator > $getIterator() const
MCAPI::BoundingBox $getBoundingBox() const
MCAPI void $dtor()
MCAPI::glm::ivec3 $getSpan() const
Definition ReflectionCtx.h:11
Definition ctx.h:5
Definition Alias.h:14