neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neolib::array_tree< Alloc > Class Template Reference

#include <array_tree.hpp>

Inheritance diagram for neolib::array_tree< Alloc >:
neolib::segmented_array< optional_position, 256 > neolib::segmented_array< node, N, node_allocator_type > neolib::segmented_array< T, SegmentSize, Alloc > neolib::tag_array< Tag, T, ArraySize, VectorSize, Alloc >

Classes

class  node
 

Public Types

typedef std::size_t size_type
 
typedef std::ptrdiff_t difference_type
 
typedef Alloc allocator_type
 

Public Member Functions

 array_tree (const Alloc &aAllocator=Alloc())
 
 array_tree (const array_tree &aOther)
 
 array_tree (array_tree &&other)
 
 ~array_tree ()
 
nodenil_node () const
 
noderoot_node () const
 
void set_root_node (node *aRoot)
 
nodefront_node () const
 
void set_front_node (node *aFront)
 
nodeback_node () const
 
void set_back_node (node *aBack)
 
nodefind_node (size_type aPosition, size_type &aNodeIndex) const
 
void insert_node (node *aNode, size_type aPosition)
 
void delete_node (node *aNode)
 
void swap (array_tree &aOther)
 

Static Public Member Functions

static size_type size (node *aNode)
 
static size_type size_parent (node *aNode)
 
static size_type size_left (node *aNode)
 
static size_type size_right (node *aNode)
 

Detailed Description

template<typename Alloc>
class neolib::array_tree< Alloc >

Definition at line 44 of file array_tree.hpp.

Member Typedef Documentation

◆ allocator_type

template<typename Alloc >
typedef Alloc neolib::array_tree< Alloc >::allocator_type

Definition at line 49 of file array_tree.hpp.

◆ difference_type

template<typename Alloc >
typedef std::ptrdiff_t neolib::array_tree< Alloc >::difference_type

Definition at line 48 of file array_tree.hpp.

◆ size_type

template<typename Alloc >
typedef std::size_t neolib::array_tree< Alloc >::size_type

Definition at line 47 of file array_tree.hpp.

Constructor & Destructor Documentation

◆ array_tree() [1/3]

template<typename Alloc >
neolib::array_tree< Alloc >::array_tree ( const Alloc aAllocator = Alloc())
inline

Definition at line 201 of file array_tree.hpp.

◆ array_tree() [2/3]

template<typename Alloc >
neolib::array_tree< Alloc >::array_tree ( const array_tree< Alloc > &  aOther)
inline

Definition at line 220 of file array_tree.hpp.

◆ array_tree() [3/3]

template<typename Alloc >
neolib::array_tree< Alloc >::array_tree ( array_tree< Alloc > &&  other)
inline

Definition at line 239 of file array_tree.hpp.

◆ ~array_tree()

template<typename Alloc >
neolib::array_tree< Alloc >::~array_tree ( )
inline

Definition at line 251 of file array_tree.hpp.

Member Function Documentation

◆ back_node()

template<typename Alloc >
node * neolib::array_tree< Alloc >::back_node ( ) const
inline

Definition at line 278 of file array_tree.hpp.

◆ delete_node()

template<typename Alloc >
void neolib::array_tree< Alloc >::delete_node ( node aNode)
inline

Definition at line 360 of file array_tree.hpp.

◆ find_node()

template<typename Alloc >
node * neolib::array_tree< Alloc >::find_node ( size_type  aPosition,
size_type aNodeIndex 
) const
inline

Definition at line 302 of file array_tree.hpp.

◆ front_node()

template<typename Alloc >
node * neolib::array_tree< Alloc >::front_node ( ) const
inline

Definition at line 270 of file array_tree.hpp.

◆ insert_node()

template<typename Alloc >
void neolib::array_tree< Alloc >::insert_node ( node aNode,
size_type  aPosition 
)
inline

Definition at line 322 of file array_tree.hpp.

◆ nil_node()

template<typename Alloc >
node * neolib::array_tree< Alloc >::nil_node ( ) const
inline

Definition at line 258 of file array_tree.hpp.

◆ root_node()

template<typename Alloc >
node * neolib::array_tree< Alloc >::root_node ( ) const
inline

Definition at line 262 of file array_tree.hpp.

◆ set_back_node()

template<typename Alloc >
void neolib::array_tree< Alloc >::set_back_node ( node aBack)
inline

Definition at line 282 of file array_tree.hpp.

◆ set_front_node()

template<typename Alloc >
void neolib::array_tree< Alloc >::set_front_node ( node aFront)
inline

Definition at line 274 of file array_tree.hpp.

◆ set_root_node()

template<typename Alloc >
void neolib::array_tree< Alloc >::set_root_node ( node aRoot)
inline

Definition at line 266 of file array_tree.hpp.

◆ size()

template<typename Alloc >
static size_type neolib::array_tree< Alloc >::size ( node aNode)
inlinestatic

Definition at line 286 of file array_tree.hpp.

◆ size_left()

template<typename Alloc >
static size_type neolib::array_tree< Alloc >::size_left ( node aNode)
inlinestatic

Definition at line 294 of file array_tree.hpp.

◆ size_parent()

template<typename Alloc >
static size_type neolib::array_tree< Alloc >::size_parent ( node aNode)
inlinestatic

Definition at line 290 of file array_tree.hpp.

◆ size_right()

template<typename Alloc >
static size_type neolib::array_tree< Alloc >::size_right ( node aNode)
inlinestatic

Definition at line 298 of file array_tree.hpp.

◆ swap()

template<typename Alloc >
void neolib::array_tree< Alloc >::swap ( array_tree< Alloc > &  aOther)
inline

Definition at line 403 of file array_tree.hpp.


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