HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
openvdb::OPENVDB_VERSION_NAME::tree::NodeChain< HeadType, HeadLevel > Struct Template Reference

NodeChain<RootNodeType, RootNodeType::LEVEL>::Type is a hboost::mpl::vector that lists the types of the nodes of the tree rooted at RootNodeType in reverse order, from LeafNode to RootNode. More...

#include <RootNode.h>

Public Types

typedef NodeChain< typename
HeadT::ChildNodeType,
HeadLevel-1 >::Type 
SubtreeT
 
typedef hboost::mpl::push_back
< SubtreeT, HeadT >::type 
Type
 

Detailed Description

template<typename HeadType, int HeadLevel>
struct openvdb::OPENVDB_VERSION_NAME::tree::NodeChain< HeadType, HeadLevel >

NodeChain<RootNodeType, RootNodeType::LEVEL>::Type is a hboost::mpl::vector that lists the types of the nodes of the tree rooted at RootNodeType in reverse order, from LeafNode to RootNode.

For example, if RootNodeType is

RootNode<InternalNode<InternalNode<LeafNode> > >

then NodeChain::Type is

hboost::mpl::vector<
LeafNode,
InternalNode<LeafNode>,
InternalNode<InternalNode<LeafNode> >,
RootNode<InternalNode<InternalNode<LeafNode> > > >
Note
Use the following to get the Nth node type, where N=0 is the LeafNodeType:
hboost::mpl::at<NodeChainType, hboost::mpl::int_<N> >::type

Definition at line 68 of file RootNode.h.

Member Typedef Documentation

template<typename HeadType, int HeadLevel>
typedef NodeChain<typename HeadT::ChildNodeType, HeadLevel-1>::Type openvdb::OPENVDB_VERSION_NAME::tree::NodeChain< HeadType, HeadLevel >::SubtreeT

Definition at line 1019 of file RootNode.h.

template<typename HeadType, int HeadLevel>
typedef hboost::mpl::push_back<SubtreeT, HeadT>::type openvdb::OPENVDB_VERSION_NAME::tree::NodeChain< HeadType, HeadLevel >::Type

Definition at line 1020 of file RootNode.h.


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