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
10class BlockPos;
11class BoundingBox;
12class ChunkPos;
13// clang-format on
14
16public:
17 // SimpleBlockVolume inner types define
18 enum class IntersectionResult : int {
19 Disjoint = 0,
20 Contains = 1,
21 Intersects = 2,
22 };
23
24 enum class CornerIndex : uchar {
25 FrontBottomLeft = 0,
26 BackBottomLeft = 1,
27 FrontTopLeft = 2,
28 BackTopLeft = 3,
29 FrontBottomRight = 4,
30 BackBottomRight = 5,
31 FrontTopRight = 6,
32 BackTopRight = 7,
33 };
34
35public:
36 // member variables
37 // NOLINTBEGIN
40 // NOLINTEND
41
42public:
43 // prevent constructor by default
44 SimpleBlockVolume& operator=(SimpleBlockVolume const&);
47
48public:
49 // virtual functions
50 // NOLINTBEGIN
51 // vIndex: 2
52 virtual ::BlockPos getMin() const /*override*/;
53
54 // vIndex: 3
55 virtual ::BlockPos getMax() const /*override*/;
56
57 // vIndex: 1
58 virtual ::BoundingBox getBoundingBox() const /*override*/;
59
60 // vIndex: 4
61 virtual ::glm::ivec3 getSpan() const /*override*/;
62
63 // vIndex: 5
64 virtual int getCapacity() const /*override*/;
65
66 // vIndex: 6
67 virtual bool isInside(::BlockPos const& pos) const /*override*/;
68
69 // vIndex: 7
70 virtual void translate(::BlockPos const& delta) /*override*/;
71
72 // vIndex: 8
73 virtual void forEach(::std::function<bool(::BlockPos const&)> callback) const /*override*/;
74
75 // vIndex: 9
76 virtual ::std::set<::ChunkPos> getChunks() const /*override*/;
77
78 // vIndex: 0
79 virtual ~SimpleBlockVolume() /*override*/;
80 // NOLINTEND
81
82public:
83 // member functions
84 // NOLINTBEGIN
85 MCAPI bool doesAreaTouchFaces(::BlockPos const& min, ::BlockPos const& max) const;
86
87 MCAPI ::SimpleBlockVolume::IntersectionResult intersects(::SimpleBlockVolume const& other) const;
88
89 MCAPI ::std::string toString() const;
90 // NOLINTEND
91
92public:
93 // destructor thunk
94 // NOLINTBEGIN
95 MCFOLD void $dtor();
96 // NOLINTEND
97
98public:
99 // virtual function thunks
100 // NOLINTBEGIN
101 MCAPI ::BlockPos $getMin() const;
102
103 MCAPI ::BlockPos $getMax() const;
104
105 MCAPI ::BoundingBox $getBoundingBox() const;
106
107 MCAPI ::glm::ivec3 $getSpan() const;
108
109 MCAPI int $getCapacity() const;
110
111 MCAPI bool $isInside(::BlockPos const& pos) const;
112
113 MCAPI void $translate(::BlockPos const& delta);
114
115 MCAPI void $forEach(::std::function<bool(::BlockPos const&)> callback) const;
116
117 MCAPI ::std::set<::ChunkPos> $getChunks() const;
118 // NOLINTEND
119
120public:
121 // vftables
122 // NOLINTBEGIN
123 MCAPI static void** $vftable();
124 // NOLINTEND
125};
Definition BlockPos.h:18
Definition BlockVolumeBase.h:12
Definition BoundingBox.h:18
Definition ChunkPos.h:11
Definition SimpleBlockVolume.h:15
Definition Alias.h:14