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 56 of file octree_node_pool.h.

## Constructor & Destructor Documentation

## OctreeNodePool()

template<typename NodeT >

pcl::octree::OctreeNodePool< NodeT >::OctreeNodePool | ( |  | ) |

inline

Empty constructor.

Definition at line 60 of file octree_node_pool.h.

## ~OctreeNodePool()

template<typename NodeT >

virtual pcl::octree::OctreeNodePool< NodeT >::~OctreeNodePool | ( |  | ) |

inline virtual

Empty deconstructor.

Definition at line 67 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 112 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 86 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_arg | add this node to the pool

Definition at line 77 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

Definition at line 123 of file octree_node_pool.h.

Referenced by pcl::octree::OctreeNodePool< NodeT >::deletePool(), pcl::octree::OctreeNodePool< NodeT >::popNode(), and pcl::octree::OctreeNodePool< NodeT >::pushNode().

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

- /build/pcl-qv3n_B/pcl-1.8.1+dfsg1/octree/include/pcl/octree/octree_node_pool.h