Image Component Library (ICL)
|
Inernally used block allocator. More...
#include <Octree.h>
Public Member Functions | |
Allocator () | |
allocates the first data chunk | |
void | grow () |
allocates the next data chunk | |
void | clear () |
deletes all allocated data chunks (except for the first) | |
Node * | next () |
returns the next four Node instances (allocates new data on demand) | |
~Allocator () | |
frees all allocated data | |
std::vector< Pt > | all () const |
returns all contained points | |
Public Attributes | |
std::vector< Node * > | allocated |
allocated data | |
int | curr |
current data |
Inernally used block allocator.
The allocator allocates ALLOC_CHUNK_SIZE*4 Node instances at once and automatically frees all data at destruction time
icl::math::Octree< Scalar, CAPACITY, SF, Pt, ALLOC_CHUNK_SIZE >::Allocator::Allocator | ( | ) | [inline] |
allocates the first data chunk
icl::math::Octree< Scalar, CAPACITY, SF, Pt, ALLOC_CHUNK_SIZE >::Allocator::~Allocator | ( | ) | [inline] |
frees all allocated data
std::vector<Pt> icl::math::Octree< Scalar, CAPACITY, SF, Pt, ALLOC_CHUNK_SIZE >::Allocator::all | ( | ) | const [inline] |
returns all contained points
void icl::math::Octree< Scalar, CAPACITY, SF, Pt, ALLOC_CHUNK_SIZE >::Allocator::clear | ( | ) | [inline] |
deletes all allocated data chunks (except for the first)
void icl::math::Octree< Scalar, CAPACITY, SF, Pt, ALLOC_CHUNK_SIZE >::Allocator::grow | ( | ) | [inline] |
allocates the next data chunk
Node* icl::math::Octree< Scalar, CAPACITY, SF, Pt, ALLOC_CHUNK_SIZE >::Allocator::next | ( | ) | [inline] |
returns the next four Node instances (allocates new data on demand)
std::vector<Node*> icl::math::Octree< Scalar, CAPACITY, SF, Pt, ALLOC_CHUNK_SIZE >::Allocator::allocated |
allocated data
int icl::math::Octree< Scalar, CAPACITY, SF, Pt, ALLOC_CHUNK_SIZE >::Allocator::curr |
current data