#include <radix.h>
Public Types | |
enum | RADIXSORTTYPE { INT32 = 0x00000000, UINT32 = 0x00000001, INT64 = 0x00000002, UINT64 = 0x00000003, FLOAT32 = 0x00000004 } |
Supported input data types for radix sorter. More... | |
Public Member Functions | |
RadixSort (RADIXSORTTYPE eType) | |
~RadixSort () | |
RadixSort & | Sort (const void *pInput, unsigned int uiNB) |
unsigned int * | GetIndices () |
unsigned int | GetUsedMemory () const |
unsigned int | GetTotalCalls () const |
unsigned int | GetHits () const |
Protected Member Functions | |
bool | Resize (unsigned int uiNB) |
void | ResetIndices () |
bool | CreateHistograms (const void *pInput, unsigned int uiNB) |
RadixSort & | Sort (const float *pfInput, unsigned int uiNB) |
Protected Attributes | |
RADIXSORTTYPE | m_eType |
unsigned int | m_uiCurrentSize |
unsigned int | m_uiPreviousSize |
unsigned int * | m_puiIndices |
unsigned int * | m_puiIndices2 |
unsigned int | m_uiTotalCalls |
unsigned int | m_uiHits |
unsigned int * | m_puiHistogram |
unsigned int * | m_puiOffset |
|
Supported input data types for radix sorter.
|
|
|
|
Free used memory |
|
Resize inner lists
|
|
Reset the inner indices |
|
Create histograms and check for temporal coherence
|
|
Sort float data
|
|
Sort data based on type of sorter as passed to constructor
|
|
Access to results, a list of indices in sorted order
|
|
|
|
|
|
|
|
Data type |
|
Current size of the indices list |
|
Size involved in previous call |
|
Lists swapped each pass, first list |
|
Lists swapped each pass, second list |
|
Statistics, total sort calls |
|
Statistics, premature exits due to temporal coherence |
|
Histogram array |
|
Offset array |