NDEVR
API Documentation
TreeSorterBase< t_dims, t_type >

Base class for tree sorters that maintain pre-sorted index arrays for efficient spatial partitioning. More...

Inheritance diagram for TreeSorterBase< t_dims, t_type >:
[legend]
Collaboration diagram for TreeSorterBase< t_dims, t_type >:
[legend]

Public Member Functions

void getList (uint01 dimension, uint04 start, uint04 end, Buffer< uint04 > &values, uint04 index_offset)
 Copies a range of the center-ordered index list into the output buffer.

Static Protected Member Functions

static void _sortList (const Buffer< bool > &list_sorter, Buffer< uint04 > &list, Buffer< uint04 > &temp, uint04 start, uint04 end)
 Partitions a list into two halves based on a boolean mask.

Protected Attributes

Buffer< uint04center_ordered [t_dims]
 Pre-sorted index arrays by center value for each dimension.
Buffer< uint04temp_array
 Temporary index buffer for partitioning operations.
Buffer< bool > temp_memory
 Temporary boolean buffer for partitioning operations.

Detailed Description

template<uint01 t_dims, class t_type>
class TreeSorterBase< t_dims, t_type >

Base class for tree sorters that maintain pre-sorted index arrays for efficient spatial partitioning.


Definition at line 61 of file TreeSorter.h.

Member Function Documentation

◆ _sortList()

template<uint01 t_dims, class t_type>
void TreeSorterBase< t_dims, t_type >::_sortList ( const Buffer< bool > & list_sorter,
Buffer< uint04 > & list,
Buffer< uint04 > & temp,
uint04 start,
uint04 end )
inlinestaticprotected

Partitions a list into two halves based on a boolean mask.

Parameters
[in]list_sorterBoolean mask where true values go left and false values go right.
[in]listThe index list to partition in place.
[in]tempTemporary buffer for the right-side elements.
[in]startThe start index.
[in]endThe end index.

Definition at line 82 of file TreeSorter.h.

Referenced by TreeBoundarySorter< t_dims, t_type >::getMedian().

◆ getList()

template<uint01 t_dims, class t_type>
void TreeSorterBase< t_dims, t_type >::getList ( uint01 dimension,
uint04 start,
uint04 end,
Buffer< uint04 > & values,
uint04 index_offset )
inline

Copies a range of the center-ordered index list into the output buffer.

Parameters
[in]dimensionThe dimension to get the sorted list for.
[in]startThe start index.
[in]endThe end index.
[in]valuesThe output buffer.
[in]index_offsetThe offset in the output buffer to write to.

Definition at line 70 of file TreeSorter.h.

References center_ordered.


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