![]() |
PeriDyno 1.0.0
|
An CPU/GPU implementation of the standard multiset suitable for small-size data. More...
#include <MultiSet.h>
Public Types | |
using | iterator = T* |
![]() | |
using | iterator = T * |
Public Member Functions | |
DYN_FUNC | MultiSet () |
DYN_FUNC iterator | find (T val) |
DYN_FUNC iterator | begin () |
DYN_FUNC iterator | end () |
DYN_FUNC void | clear () |
DYN_FUNC uint | size () |
DYN_FUNC uint | count (T val) |
DYN_FUNC iterator | insert (T val) |
DYN_FUNC bool | empty () |
DYN_FUNC int | erase (const T val) |
DYN_FUNC void | erase (iterator val_ptr) |
![]() | |
DYN_FUNC | STLBuffer () |
DYN_FUNC void | reserve (T *beg, uint buffer_size) |
DYN_FUNC uint | max_size () |
Private Attributes | |
uint | m_size = 0 |
Additional Inherited Members | |
![]() | |
DYN_FUNC T * | bufferEnd () |
![]() | |
uint | m_maxSize = 0 |
T * | m_startLoc = nullptr |
An CPU/GPU implementation of the standard multiset suitable for small-size data.
Be aware do not use this structure if the data size is large, because the computation complexity is O(n^2) for some specific situation.
All elements are organized in non-descending order.
T |
Definition at line 20 of file MultiSet.h.
using dyno::MultiSet< T >::iterator = T* |
Definition at line 23 of file MultiSet.h.
DYN_FUNC dyno::MultiSet< T >::MultiSet | ( | ) |
|
inline |
Definition at line 29 of file MultiSet.h.
DYN_FUNC void dyno::MultiSet< T >::clear | ( | ) |
Definition at line 47 of file MultiSet.inl.
DYN_FUNC uint dyno::MultiSet< T >::count | ( | T | val | ) |
DYN_FUNC bool dyno::MultiSet< T >::empty | ( | ) |
Definition at line 75 of file MultiSet.inl.
|
inline |
Definition at line 33 of file MultiSet.h.
DYN_FUNC int dyno::MultiSet< T >::erase | ( | const T | val | ) |
DYN_FUNC void dyno::MultiSet< T >::erase | ( | iterator | val_ptr | ) |
DYN_FUNC T * dyno::MultiSet< T >::find | ( | T | val | ) |
DYN_FUNC T * dyno::MultiSet< T >::insert | ( | T | val | ) |
DYN_FUNC uint dyno::MultiSet< T >::size | ( | ) |
Definition at line 53 of file MultiSet.inl.
|
private |
Definition at line 49 of file MultiSet.h.