pcl::octree::BufferedBranchNode< ContainerT > Class Template Reference

`#include <pcl/octree/octree2buf_base.h>`

Inheritance diagram for pcl::octree::BufferedBranchNode< ContainerT >:

## Public Member Functions

| BufferedBranchNode ()
| Empty constructor. More...
| BufferedBranchNode (const BufferedBranchNode &source)
| Copy constructor. More...
BufferedBranchNode & | operator= (const BufferedBranchNode &source_arg)
| Copy operator. More...
| ~BufferedBranchNode ()
| Empty constructor. More...
BufferedBranchNode * | deepCopy () const override
| Method to perform a deep copy of the octree. More...
OctreeNode * | getChildPtr (unsigned char buffer_arg, unsigned char index_arg) const
| Get child pointer in current branch node. More...
void | setChildPtr (unsigned char buffer_arg, unsigned char index_arg, OctreeNode *newNode_arg)
| Set child pointer in current branch node. More...
bool | hasChild (unsigned char buffer_arg, unsigned char index_arg) const
| Check if branch is pointing to a particular child node. More...
node_type_t | getNodeType () const override
| Get the type of octree node. More...
void | reset ()
| Reset branch node container for every branch buffer. More...
const ContainerT * | operator-> () const
| Get const pointer to container. More...
ContainerT * | operator-> ()
| Get pointer to container. More...
const ContainerT & | operator* () const
| Get const reference to container. More...
ContainerT & | operator* ()
| Get reference to container. More...
const ContainerT & | getContainer () const
| Get const reference to container. More...
ContainerT & | getContainer ()
| Get reference to container. More...
const ContainerT * | getContainerPtr () const
| Get const pointer to container. More...
ContainerT * | getContainerPtr ()
| Get pointer to container. More...
Public Member Functions inherited from pcl::octree::OctreeNode
| OctreeNode ()
virtual | ~OctreeNode ()

## Protected Attributes

ContainerT | container_
OctreeNode * | child_node_array_ [2][8]

## Detailed Description

### template<typename ContainerT>
class pcl::octree::BufferedBranchNode< ContainerT >

Definition at line 55 of file octree2buf_base.h.

## Constructor & Destructor Documentation

## BufferedBranchNode() [1/2]

template<typename ContainerT >

pcl::octree::BufferedBranchNode< ContainerT >::BufferedBranchNode | ( |  | ) |

inline

Empty constructor.

Definition at line 60 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::reset().

Referenced by pcl::octree::BufferedBranchNode< ContainerT >::deepCopy().

## BufferedBranchNode() [2/2]

template<typename ContainerT >

pcl::octree::BufferedBranchNode< ContainerT >::BufferedBranchNode | ( | const BufferedBranchNode< ContainerT > & | source | ) |

inline

Copy constructor.

Definition at line 66 of file octree2buf_base.h.

## ~BufferedBranchNode()

template<typename ContainerT >

pcl::octree::BufferedBranchNode< ContainerT >::~BufferedBranchNode | ( |  | ) |

inline

Empty constructor.

Definition at line 87 of file octree2buf_base.h.

## Member Function Documentation

## deepCopy()

template<typename ContainerT >

BufferedBranchNode* pcl::octree::BufferedBranchNode< ContainerT >::deepCopy | ( |  | ) | const

inline override virtual

Method to perform a deep copy of the octree.

Implements pcl::octree::OctreeNode.

Definition at line 93 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::BufferedBranchNode().

## getChildPtr()

template<typename ContainerT >

OctreeNode* pcl::octree::BufferedBranchNode< ContainerT >::getChildPtr | ( | unsigned char | buffer_arg,
|  | unsigned char | index_arg
| ) |  | const

inline

Get child pointer in current branch node.

Parameters

  buffer_arg | buffer selector
  index_arg | index of child in node

Returns
  pointer to child node

Definition at line 104 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::child_node_array_.

Referenced by pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::branchHasChild(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::createLeafRecursive(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deleteBranch(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deleteBranchChild(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deleteLeafRecursive(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deserializeTreeRecursive(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::findLeafRecursive(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::getBranchBitPattern(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::getBranchChildPtr(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::getBranchXORBitPattern(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::serializeTreeRecursive(), and pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::treeCleanUpRecursive().

## getContainer() [1/2]

template<typename ContainerT >

ContainerT& pcl::octree::BufferedBranchNode< ContainerT >::getContainer | ( |  | ) |

inline

Get reference to container.

Definition at line 182 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::container_.

## getContainer() [2/2]

template<typename ContainerT >

const ContainerT& pcl::octree::BufferedBranchNode< ContainerT >::getContainer | ( |  | ) | const

inline

Get const reference to container.

Definition at line 175 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::container_.

## getContainerPtr() [1/2]

template<typename ContainerT >

ContainerT* pcl::octree::BufferedBranchNode< ContainerT >::getContainerPtr | ( |  | ) |

inline

Get pointer to container.

Definition at line 196 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::container_.

## getContainerPtr() [2/2]

template<typename ContainerT >

const ContainerT* pcl::octree::BufferedBranchNode< ContainerT >::getContainerPtr | ( |  | ) | const

inline

Get const pointer to container.

Definition at line 189 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::container_.

## getNodeType()

template<typename ContainerT >

node_type_t pcl::octree::BufferedBranchNode< ContainerT >::getNodeType | ( |  | ) | const

inline override virtual

Get the type of octree node.

Returns LEAVE_NODE type

Implements pcl::octree::OctreeNode.

Definition at line 134 of file octree2buf_base.h.

References pcl::octree::BRANCH_NODE.

## hasChild()

template<typename ContainerT >

bool pcl::octree::BufferedBranchNode< ContainerT >::hasChild | ( | unsigned char | buffer_arg,
|  | unsigned char | index_arg
| ) |  | const

inline

Check if branch is pointing to a particular child node.

Parameters

  buffer_arg | buffer selector
  index_arg | index of child in node

Returns
  "true" if pointer to child node exists; "false" otherwise

Definition at line 127 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::child_node_array_.

Referenced by pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::createLeafRecursive(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deleteBranchChild(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deleteLeafRecursive(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deserializeTreeRecursive(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::findLeafRecursive(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::serializeTreeRecursive(), and pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::treeCleanUpRecursive().

## operator*() [1/2]

template<typename ContainerT >

ContainerT& pcl::octree::BufferedBranchNode< ContainerT >::operator* | ( |  | ) |

inline

Get reference to container.

Definition at line 168 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::container_.

## operator*() [2/2]

template<typename ContainerT >

const ContainerT& pcl::octree::BufferedBranchNode< ContainerT >::operator* | ( |  | ) | const

inline

Get const reference to container.

Definition at line 161 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::container_.

## operator->() [1/2]

template<typename ContainerT >

ContainerT* pcl::octree::BufferedBranchNode< ContainerT >::operator-> | ( |  | ) |

inline

Get pointer to container.

Definition at line 154 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::container_.

## operator->() [2/2]

template<typename ContainerT >

const ContainerT* pcl::octree::BufferedBranchNode< ContainerT >::operator-> | ( |  | ) | const

inline

Get const pointer to container.

Definition at line 147 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::container_.

## operator=()

template<typename ContainerT >

BufferedBranchNode& pcl::octree::BufferedBranchNode< ContainerT >::operator= | ( | const BufferedBranchNode< ContainerT > & | source_arg | ) |

inline

Copy operator.

Definition at line 73 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::child_node_array_, and pcl::octree::OctreeNode::deepCopy().

## reset()

template<typename ContainerT >

void pcl::octree::BufferedBranchNode< ContainerT >::reset | ( |  | ) |

inline

Reset branch node container for every branch buffer.

Definition at line 140 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::child_node_array_.

Referenced by pcl::octree::BufferedBranchNode< ContainerT >::BufferedBranchNode().

## setChildPtr()

template<typename ContainerT >

void pcl::octree::BufferedBranchNode< ContainerT >::setChildPtr | ( | unsigned char | buffer_arg,
|  | unsigned char | index_arg,
|  | OctreeNode * | newNode_arg
| ) |  |

inline

Set child pointer in current branch node.

Parameters

  buffer_arg | buffer selector
  index_arg | index of child in node
  newNode_arg | pointer to new child node

Definition at line 115 of file octree2buf_base.h.

References pcl::octree::BufferedBranchNode< ContainerT >::child_node_array_.

Referenced by pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::createBranchChild(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::createLeafChild(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::createLeafRecursive(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deleteBranch(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deleteBranchChild(), pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::deserializeTreeRecursive(), and pcl::octree::Octree2BufBase< OctreeContainerPointIndices, OctreeContainerEmpty >::setBranchChildPtr().

## Member Data Documentation

## child_node_array_

template<typename ContainerT >

OctreeNode* pcl::octree::BufferedBranchNode< ContainerT >::child_node_array_[2][8]

protected

Definition at line 204 of file octree2buf_base.h.

Referenced by pcl::octree::BufferedBranchNode< ContainerT >::getChildPtr(), pcl::octree::BufferedBranchNode< ContainerT >::hasChild(), pcl::octree::BufferedBranchNode< ContainerT >::operator=(), pcl::octree::BufferedBranchNode< ContainerT >::reset(), and pcl::octree::BufferedBranchNode< ContainerT >::setChildPtr().

## container_

template<typename ContainerT >

ContainerT pcl::octree::BufferedBranchNode< ContainerT >::container_

protected

Definition at line 202 of file octree2buf_base.h.

Referenced by pcl::octree::BufferedBranchNode< ContainerT >::getContainer(), pcl::octree::BufferedBranchNode< ContainerT >::getContainerPtr(), pcl::octree::BufferedBranchNode< ContainerT >::operator*(), and pcl::octree::BufferedBranchNode< ContainerT >::operator->().

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

- pcl/octree/octree2buf_base.h