Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
nanoflann::PooledAllocator Class Reference

#include <coresoftware/blob/master/offline/packages/trackreco/nanoflann.hpp>

Public Member Functions

 PooledAllocator ()
 
 ~PooledAllocator ()
 
void free_all ()
 
void * malloc (const size_t req_size)
 
template<typename T >
Tallocate (const size_t count=1)
 

Public Attributes

size_t usedMemory
 
size_t wastedMemory
 

Private Member Functions

void internal_init ()
 

Private Attributes

size_t remaining
 
void * base
 
void * loc
 

Detailed Description

Definition at line 498 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 498 of file nanoflann.hpp

Constructor & Destructor Documentation

nanoflann::PooledAllocator::PooledAllocator ( )
inline

Default constructor. Initializes a new pool.

Definition at line 525 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 525 of file nanoflann.hpp

nanoflann::PooledAllocator::~PooledAllocator ( )
inline

Destructor. Frees all the memory allocated in this pool.

Definition at line 533 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 533 of file nanoflann.hpp

Member Function Documentation

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

Allocates (using this pool) a generic type T.

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

Definition at line 607 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 607 of file nanoflann.hpp

References nanoflann::KNNResultSet< DistanceType, IndexType, CountType >::count, and Acts::UnitConstants::T.

void nanoflann::PooledAllocator::free_all ( )
inline

Frees all allocated memory chunks

Definition at line 539 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 539 of file nanoflann.hpp

void nanoflann::PooledAllocator::internal_init ( )
inlineprivate

Definition at line 509 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 509 of file nanoflann.hpp

void* nanoflann::PooledAllocator::malloc ( const size_t  req_size)
inline

Returns a pointer to a piece of new memory of the given size in bytes allocated from the pool.

Definition at line 554 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 554 of file nanoflann.hpp

References nanoflann::BLOCKSIZE, fprintf(), loc, Acts::UnitConstants::m, nanoflann::KNNResultSet< DistanceType, IndexType, CountType >::size(), and nanoflann::WORDSIZE.

+ Here is the call graph for this function:

Member Data Documentation

void* nanoflann::PooledAllocator::base
private

Definition at line 506 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 506 of file nanoflann.hpp

void* nanoflann::PooledAllocator::loc
private

Definition at line 507 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 507 of file nanoflann.hpp

size_t nanoflann::PooledAllocator::remaining
private

Definition at line 505 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 505 of file nanoflann.hpp

size_t nanoflann::PooledAllocator::usedMemory

Definition at line 518 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 518 of file nanoflann.hpp

size_t nanoflann::PooledAllocator::wastedMemory

Definition at line 519 of file nanoflann.hpp.

View newest version in sPHENIX GitHub at line 519 of file nanoflann.hpp


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