41 #include <pcl/console/print.h>
74 return (!
operator==(other));
110 assert(
"getPointIndex: undefined point index");
166 "[pcl::octree::OctreeContainerBase::getPointIndex] Undefined point index!\n");
203 return (this->
data_ == otherConDataT->data_);
235 data_vector_arg.push_back(
data_);
279 const auto* otherConDataTVec =
313 data_vector_arg.insert(
Octree container class that can serve as a base to construct own leaf node container classes.
virtual uindex_t getSize() const
Pure abstract method to get size of container (number of indices)
virtual index_t getPointIndex() const
Empty getPointIndex implementation as this leaf node does not store any point indices.
virtual void getPointIndices(Indices &) const
Empty getPointIndices implementation as this leaf node does not store any data.
bool operator!=(const OctreeContainerBase &other) const
Inequal comparison operator.
virtual void reset()=0
Pure abstract reset leaf node implementation.
virtual void addPointIndex(index_t)
Empty addPointIndex implementation.
void getPointIndex(index_t &) const
Empty getPointIndex implementation as this leaf node does not store any point indices.
virtual ~OctreeContainerBase()=default
virtual bool operator==(const OctreeContainerBase &) const
Equal comparison operator.
Octree container class that does not store any information.
void getPointIndices(Indices &) const override
Empty getPointIndices implementation as this leaf node does not store any data.
virtual OctreeContainerEmpty * deepCopy() const
Octree deep copy method.
void addPointIndex(index_t) override
Empty addPointIndex implementation.
index_t getPointIndex() const override
Empty getPointIndex implementation as this leaf node does not store any point indices.
uindex_t getSize() const override
Abstract get size of container (number of DataT objects)
void reset() override
Abstract reset leaf node implementation.
Octree container class that does store a single point index.
index_t data_
Point index stored in octree.
uindex_t getSize() const override
Get size of container (number of DataT objects)
virtual OctreeContainerPointIndex * deepCopy() const
Octree deep copy method.
index_t getPointIndex() const override
Retrieve point index from container.
void addPointIndex(index_t data_arg) override
Add point index to container memory.
void reset() override
Reset leaf node memory to zero.
void getPointIndices(Indices &data_vector_arg) const override
Retrieve point indices from container.
OctreeContainerPointIndex()
Empty constructor.
bool operator==(const OctreeContainerBase &other) const override
Equal comparison operator.
Octree container class that does store a vector of point indices.
Indices & getPointIndicesVector()
Retrieve reference to point indices vector.
void getPointIndices(Indices &data_vector_arg) const override
Retrieve point indices from container.
void reset() override
Reset leaf node.
void addPointIndex(index_t data_arg) override
Add point index to container memory.
bool operator==(const OctreeContainerBase &other) const override
Equal comparison operator.
index_t getPointIndex() const override
Retrieve point index from container.
uindex_t getSize() const override
Get size of container (number of indices)
Indices leafDataTVector_
Leaf node DataT vector.
virtual OctreeContainerPointIndices * deepCopy() const
Octree deep copy method.
detail::int_type_t< detail::index_type_size, false > uindex_t
Type used for an unsigned index in PCL.
detail::int_type_t< detail::index_type_size, detail::index_type_signed > index_t
Type used for an index in PCL.
IndicesAllocator<> Indices
Type used for indices in PCL.
Defines basic non-point types used by PCL.