3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/platform/brstd/function_ref.h"
7#include "mc/world/level/block/BlockVolumeBase.h"
37 RelativeVolumeListBlockVolume();
42 virtual ::BoundingBox getBoundingBox()
const ;
44 virtual ::BlockPos getMin()
const ;
46 virtual ::BlockPos getMax()
const ;
48 virtual ::glm::ivec3 getSpan()
const ;
50 virtual int getCapacity()
const ;
52 virtual bool isInside(
::BlockPos const& pos)
const ;
54 virtual void translate(
::BlockPos const& delta) ;
58 virtual ::std::set<::ChunkPos> getChunks()
const ;
60 virtual ::std::unordered_set<::BlockPos> getFlattenedBlockPositions()
const ;
62 virtual ::std::unique_ptr<::BaseBlockLocationIterator> getIterator()
const ;
64 virtual ~RelativeVolumeListBlockVolume() ;
75 ::std::vector<::Vec3>
const& blockPositions,
76 ::std::optional<::BlockPos>
const& origin
81 MCNAPI
void add(::std::vector<::Vec3>
const& blockPositions);
85 MCNAPI ::std::vector<::SimpleBlockVolume>
93 MCNAPI
void forEachRelativeBlockPosition(::std::function<
bool(
::BlockPos const&)> callback)
const;
108 MCNAPI ::Editor::RelativeVolumeListBlockVolume&
operator=(::std::vector<::Vec3>
const& locations);
116 MCNAPI
void remove(::std::vector<::Vec3>
const& blockPositions);
136 MCNAPI
void*
$ctor(::std::vector<::Vec3>
const& blockPositions, ::std::optional<::BlockPos>
const& origin);
168 MCNAPI ::std::unique_ptr<::BaseBlockLocationIterator>
$getIterator()
const;
Definition BaseBlockLocationIterator.h:8
Definition BlockVolumeBase.h:16
Definition BoundingBox.h:13
Definition RelativeVolumeListBlockVolume.h:22
MCAPI::BoundingBox $getBoundingBox() const
MCAPI::Editor::RelativeVolumeListBlockVolume & operator=(::Vec3 const &location)
MCAPI::BlockPos $getMax() const
static MCAPI void ** $vftable()
MCAPI void enableAdjacencyMap()
MCAPI void remove(::SimpleBlockVolume const &relativeVolume)
MCAPI void * $ctor(::Editor::RelativeVolumeListBlockVolume &&rhs)
MCAPI ::std::unique_ptr<::BaseBlockLocationIterator > $getIterator() const
MCAPI::Editor::RelativeVolumeListBlockVolume & operator=(::Editor::RelativeVolumeListBlockVolume const &rhs)
MCAPI ::std::unordered_set<::BlockPos > $getFlattenedBlockPositions() const
MCAPI bool hasAdjacent(::BlockPos const &pos, ::BlockPos const &offset) const
MCAPI void remove(::std::vector<::Vec3 > const &blockPositions)
static MCAPI void bindType(::cereal::ReflectionCtx &ctx)
MCAPI RelativeVolumeListBlockVolume(::Editor::RelativeVolumeListBlockVolume const &rhs)
MCAPI int $getCapacity() const
MCAPI ::std::vector<::BlockPos > getBlockPositionList(bool relative) const
MCAPI void add(::std::vector<::Vec3 > const &blockPositions)
MCAPI void * $ctor(::std::vector<::Vec3 > const &blockPositions, ::std::optional<::BlockPos > const &origin)
MCAPI void * $ctor(::Editor::RelativeVolumeListBlockVolume const &rhs)
MCAPI void $translate(::BlockPos const &delta)
MCAPI bool operator==(::Editor::RelativeVolumeListBlockVolume const &rhs) const
MCAPI::Editor::RelativeVolumeListBlockVolume & operator=(::std::vector<::Vec3 > const &locations)
MCAPI::BlockPos $getMin() const
MCAPI ::std::set<::ChunkPos > $getChunks() const
MCAPI::glm::ivec3 $getSpan() const
MCAPI void add(::SimpleBlockVolume const &_relativeVolume)
MCAPI void $forEach(::brstd::function_ref< bool(::BlockPos const &)> callback) const
MCAPI void add(::Vec3 const &pos)
MCAPI RelativeVolumeListBlockVolume(::Editor::RelativeVolumeListBlockVolume &&rhs)
MCAPI void remove(::Vec3 const &pos)
MCAPI bool $isInside(::BlockPos const &pos) const
MCAPI ::std::unordered_set<::BlockPos > getBlockPositionSet(bool relative) const
MCAPI RelativeVolumeListBlockVolume(::std::vector<::Vec3 > const &blockPositions, ::std::optional<::BlockPos > const &origin)
MCAPI::Editor::RelativeVolumeListBlockVolume & operator=(::Editor::RelativeVolumeListBlockVolume &&rhs)
MCAPI ::std::vector<::SimpleBlockVolume > calculateVolumetricDifference(::SimpleBlockVolume const &volA, ::SimpleBlockVolume const &volB)
Definition SimpleBlockVolume.h:20
Definition function_ref.h:60
Definition ReflectionCtx.h:11