40 #ifndef PCL_OCTREE_POINTCLOUD_ADJACENCY_CONTAINER_H_ 41 #define PCL_OCTREE_POINTCLOUD_ADJACENCY_CONTAINER_H_ 53 template<
typename Po
intInT,
typename DataT = Po
intInT>
56 template<
typename T,
typename U,
typename V>
62 inline const_iterator
cbegin ()
const {
return (neighbors_.begin ()); }
63 inline const_iterator
cend ()
const {
return (neighbors_.end ()); }
65 inline size_t size ()
const {
return neighbors_.size (); }
85 return neighbors_.size ();
100 setData (
const DataT& data_arg) { data_ = data_arg;}
113 inline iterator
begin () {
return (neighbors_.begin ()); }
114 inline iterator
end () {
return (neighbors_.end ()); }
123 return new_container;
164 neighbors_.push_back (neighbor);
173 for (iterator neighb_it = neighbors_.begin(); neighb_it != neighbors_.end(); ++neighb_it)
175 if ( *neighb_it == neighbor)
177 neighbors_.erase (neighb_it);
189 neighbors_ = neighbor_arg;
194 NeighborListT neighbors_;
Octree container class that can serve as a base to construct own leaf node container classes...
virtual void reset()
Clear the voxel centroid.
virtual size_t getSize() const
virtual method to get size of container
Octree adjacency leaf container class- stores a list of pointers to neighbors, number of points added...
NeighborListT::const_iterator const_iterator
int getPointCounter() const
Gets the number of points contributing to this leaf.
Octree pointcloud voxel class which maintains adjacency information for its voxels.
This file defines compatibility wrappers for low level I/O functions.
void setData(const DataT &data_arg)
Sets the data member.
virtual ~OctreePointCloudAdjacencyContainer()
Empty class deconstructor.
virtual OctreePointCloudAdjacencyContainer * deepCopy() const
deep copy function
size_t getNumNeighbors() const
Returns the number of neighbors this leaf has.
std::list< OctreePointCloudAdjacencyContainer * > NeighborListT
NeighborListT::iterator iterator
void setNeighbors(const NeighborListT &neighbor_arg)
Sets the whole neighbor set.
OctreePointCloudAdjacencyContainer()
Class initialization.
const_iterator cbegin() const
DataT & getData()
Returns a reference to the data member to access it without copying.
void addNeighbor(OctreePointCloudAdjacencyContainer *neighbor)
Add new neighbor to voxel.
void setPointCounter(int points_arg)
Sets the number of points contributing to this leaf.
void addPoint(const PointInT &)
Add new point to container- this just counts points.
void computeData()
Function for working on data added.
const_iterator cend() const
void removeNeighbor(OctreePointCloudAdjacencyContainer *neighbor)
Remove neighbor from neighbor set.