LeviLamina
Loading...
Searching...
No Matches
ListBlockVolume.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/BlockPos.h"
7#include "mc/world/level/block/BlockVolumeBase.h"
8
9// auto generated forward declare list
10// clang-format off
12class BoundingBox;
13class ChunkPos;
14class Vec3;
15// clang-format on
16
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<8, 64, ::std::unordered_set<::BlockPos>> mBlockPositions;
22 ::ll::TypedStorage<4, 12, ::BlockPos> mMin;
23 ::ll::TypedStorage<4, 12, ::BlockPos> mMax;
24 ::ll::TypedStorage<8, 8, uint64> mChangeCount;
25 // NOLINTEND
26
27public:
28 // prevent constructor by default
29 ListBlockVolume& operator=(ListBlockVolume const&);
31
32public:
33 // virtual functions
34 // NOLINTBEGIN
35 // vIndex: 2
36 virtual ::BlockPos getMin() const /*override*/;
37
38 // vIndex: 3
39 virtual ::BlockPos getMax() const /*override*/;
40
41 // vIndex: 1
42 virtual ::BoundingBox getBoundingBox() const /*override*/;
43
44 // vIndex: 4
45 virtual ::glm::ivec3 getSpan() const /*override*/;
46
47 // vIndex: 5
48 virtual int getCapacity() const /*override*/;
49
50 // vIndex: 6
51 virtual bool isInside(::BlockPos const& pos) const /*override*/;
52
53 // vIndex: 7
54 virtual void translate(::BlockPos const& delta) /*override*/;
55
56 // vIndex: 8
57 virtual void forEach(::std::function<bool(::BlockPos const&)> callback) const /*override*/;
58
59 // vIndex: 9
60 virtual ::std::set<::ChunkPos> getChunks() const /*override*/;
61
62 // vIndex: 10
63 virtual ::std::unordered_set<::BlockPos> getFlattenedBlockPositions() const /*override*/;
64
65 // vIndex: 11
66 virtual ::std::unique_ptr<::BaseBlockLocationIterator> getIterator() const /*override*/;
67
68 // vIndex: 0
69 virtual ~ListBlockVolume() /*override*/ = default;
70 // NOLINTEND
71
72public:
73 // member functions
74 // NOLINTBEGIN
75 MCAPI explicit ListBlockVolume(::std::vector<::BlockPos> const& blockPositions);
76
77 MCAPI ListBlockVolume(::ListBlockVolume const& rhs);
78
79 MCAPI void insert(::std::vector<::Vec3> const& blockPositions);
80 // NOLINTEND
81
82public:
83 // constructor thunks
84 // NOLINTBEGIN
85 MCAPI void* $ctor(::std::vector<::BlockPos> const& blockPositions);
86
87 MCAPI void* $ctor(::ListBlockVolume const& rhs);
88 // NOLINTEND
89
90public:
91 // virtual function thunks
92 // NOLINTBEGIN
93 MCAPI ::BlockPos $getMin() const;
94
95 MCAPI ::BlockPos $getMax() const;
96
97 MCAPI ::BoundingBox $getBoundingBox() const;
98
99 MCAPI ::glm::ivec3 $getSpan() const;
100
101 MCFOLD int $getCapacity() const;
102
103 MCAPI bool $isInside(::BlockPos const& pos) const;
104
105 MCAPI void $translate(::BlockPos const& delta);
106
107 MCAPI void $forEach(::std::function<bool(::BlockPos const&)> callback) const;
108
109 MCAPI ::std::set<::ChunkPos> $getChunks() const;
110
111 MCAPI ::std::unordered_set<::BlockPos> $getFlattenedBlockPositions() const;
112
113 MCAPI ::std::unique_ptr<::BaseBlockLocationIterator> $getIterator() const;
114 // NOLINTEND
115
116public:
117 // vftables
118 // NOLINTBEGIN
119 MCNAPI static void** $vftable();
120 // NOLINTEND
121};
Definition BaseBlockLocationIterator.h:8
Definition BlockPos.h:17
Definition BlockVolumeBase.h:13
Definition BoundingBox.h:13
Definition ChunkPos.h:11
Definition ListBlockVolume.h:17
static MCAPI void ** $vftable()
Definition Vec3.h:10