Main MRPT website > C++ reference
MRPT logo
Classes | Functions | Variables

Detailed Description

Collaboration diagram for Memory allocation:


class  nanoflann::PooledAllocator


template<typename T >
T * nanoflann::allocate (size_t count=1)
 Allocates (using C's malloc) a generic type T. More...


const size_t nanoflann::WORDSIZE =16
 Pooled storage allocator. More...
const size_t nanoflann::BLOCKSIZE =8192

Function Documentation

◆ allocate()

template<typename T >
T* nanoflann::allocate ( size_t  count = 1)

Allocates (using C's malloc) a generic type T.

Params: count = number of instances to allocate. Returns: pointer (of type T*) to memory buffer

Definition at line 432 of file nanoflann.hpp.

References nanoflann::KNNResultSet< DistanceType, IndexType, CountType >::count.

Variable Documentation


const size_t nanoflann::BLOCKSIZE =8192

Definition at line 455 of file nanoflann.hpp.

Referenced by nanoflann::PooledAllocator::malloc().


const size_t nanoflann::WORDSIZE =16

Pooled storage allocator.

The following routines allow for the efficient allocation of storage in small chunks from a specified pool. Rather than allowing each structure to be freed individually, an entire pool of storage is freed at once. This method has two advantages over just using malloc() and free(). First, it is far more efficient for allocating small objects, as there is no overhead for remembering all the information needed to free each object or consolidating fragmented memory. Second, the decision about how long to keep an object is made at the time of allocation, and there is no need to track down all the objects to free them.

Definition at line 454 of file nanoflann.hpp.

Referenced by nanoflann::PooledAllocator::malloc().

Page generated by Doxygen 1.8.14 for MRPT 1.0.2 SVN: at lun oct 28 00:52:41 CET 2019 Hosted on: Logo