23 enum class CornerIndex : uchar {
34 enum class IntersectionResult :
int {
40 using CornerHandle = uchar;
45 ::ll::TypedStorage<4, 12, ::BlockPos> mFrom;
46 ::ll::TypedStorage<4, 12, ::BlockPos> mTo;
53 SimpleBlockVolume& operator=(SimpleBlockVolume
const&);
60 virtual ::BlockPos getMin()
const ;
62 virtual ::BlockPos getMax()
const ;
64 virtual ::BoundingBox getBoundingBox()
const ;
66 virtual ::glm::ivec3 getSpan()
const ;
68 virtual int getCapacity()
const ;
70 virtual bool isInside(
::BlockPos const& pos)
const ;
72 virtual void translate(
::BlockPos const& delta) ;
76 virtual ::std::set<::ChunkPos> getChunks()
const ;
78 virtual ::std::unordered_set<::BlockPos> getFlattenedBlockPositions()
const ;
80 virtual ::std::unique_ptr<::BaseBlockLocationIterator> getIterator()
const ;
82 virtual ~SimpleBlockVolume() ;
89 MCAPI SimpleBlockVolume(::SimpleBlockVolume
const& volume);
99 MCAPI uchar getCornerHandle(::SimpleBlockVolume::CornerIndex cornerIndex)
const;
101 MCAPI ::BlockPos getCornerPosition(uchar cornerHandle)
const;
103 MCAPI ::AABB getWorldAABB()
const;
106 MCAPI ::SimpleBlockVolume::IntersectionResult intersects(::SimpleBlockVolume
const& other)
const;
109 MCAPI
bool operator==(::SimpleBlockVolume
const& other)
const;
111 MCAPI ::SimpleBlockVolume& setCornerPosition(uchar cornerHandle,
::BlockPos const& pos);
113 MCAPI ::SimpleBlockVolume& translateCorner(uchar cornerHandle, ::glm::ivec3
const& delta);
127 MCAPI
void* $ctor(::SimpleBlockVolume
const& volume);
144 MCAPI ::BlockPos $getMin()
const;
146 MCAPI ::BlockPos $getMax()
const;
148 MCAPI ::BoundingBox $getBoundingBox()
const;
150 MCAPI ::glm::ivec3 $getSpan()
const;
152 MCAPI
int $getCapacity()
const;
154 MCAPI
bool $isInside(
::BlockPos const& pos)
const;
156 MCAPI
void $translate(
::BlockPos const& delta);
160 MCAPI ::std::set<::ChunkPos> $getChunks()
const;
162 MCAPI ::std::unordered_set<::BlockPos> $getFlattenedBlockPositions()
const;
164 MCAPI ::std::unique_ptr<::BaseBlockLocationIterator> $getIterator()
const;
172 MCAPI
static void** $vftable();