Point Cloud Library (PCL)  1.14.0-dev
List of all members | Public Member Functions | Protected Attributes
pcl::octree::OctreeNodePool< NodeT > Class Template Reference

Octree node pool More...

#include <pcl/octree/octree_node_pool.h>

Public Member Functions

 OctreeNodePool ()
 Empty constructor. More...
 
virtual ~OctreeNodePool ()
 Empty deconstructor. More...
 
void pushNode (NodeT *node_arg)
 Push node to pool. More...
 
NodeT * popNode ()
 Pop node from pool - Allocates new nodes if pool is empty. More...
 
void deletePool ()
 Delete all nodes in pool. More...
 

Protected Attributes

std::vector< NodeT * > nodePool_
 

Detailed Description

template<typename NodeT>
class pcl::octree::OctreeNodePool< NodeT >

Octree node pool

Note
Used to reduce memory allocation and class instantiation events when generating octrees at high rate
Author
Julius Kammerl (juliu.nosp@m.s@ka.nosp@m.mmerl.nosp@m..de)

Definition at line 54 of file octree_node_pool.h.

Constructor & Destructor Documentation

◆ OctreeNodePool()

template<typename NodeT >
pcl::octree::OctreeNodePool< NodeT >::OctreeNodePool ( )
inline

Empty constructor.

Definition at line 57 of file octree_node_pool.h.

◆ ~OctreeNodePool()

template<typename NodeT >
virtual pcl::octree::OctreeNodePool< NodeT >::~OctreeNodePool ( )
inlinevirtual

Empty deconstructor.

Definition at line 60 of file octree_node_pool.h.

References pcl::octree::OctreeNodePool< NodeT >::deletePool().

Member Function Documentation

◆ deletePool()

template<typename NodeT >
void pcl::octree::OctreeNodePool< NodeT >::deletePool ( )
inline

Delete all nodes in pool.

Definition at line 98 of file octree_node_pool.h.

References pcl::octree::OctreeNodePool< NodeT >::nodePool_.

Referenced by pcl::octree::OctreeNodePool< NodeT >::~OctreeNodePool().

◆ popNode()

template<typename NodeT >
NodeT* pcl::octree::OctreeNodePool< NodeT >::popNode ( )
inline

Pop node from pool - Allocates new nodes if pool is empty.

Returns
Pointer to octree node

Definition at line 75 of file octree_node_pool.h.

References pcl::octree::OctreeNodePool< NodeT >::nodePool_.

◆ pushNode()

template<typename NodeT >
void pcl::octree::OctreeNodePool< NodeT >::pushNode ( NodeT *  node_arg)
inline

Push node to pool.

Parameters
node_argadd this node to the pool

Definition at line 66 of file octree_node_pool.h.

References pcl::octree::OctreeNodePool< NodeT >::nodePool_.

Member Data Documentation

◆ nodePool_

template<typename NodeT >
std::vector<NodeT*> pcl::octree::OctreeNodePool< NodeT >::nodePool_
protected

The documentation for this class was generated from the following file: