PeriDyno 1.0.0
Loading...
Searching...
No Matches
dyno::Set< T > Class Template Reference

An CPU/GPU implementation of the standard set suitable for small-size data. More...

#include <Set.h>

Inheritance diagram for dyno::Set< T >:
Collaboration diagram for dyno::Set< T >:

Public Member Functions

DYN_FUNC Set ()
 
DYN_FUNC Tfind (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 Tinsert (T val)
 
DYN_FUNC bool empty ()
 
DYN_FUNC int erase (const T val)
 
DYN_FUNC void erase (T *val_ptr)
 
- Public Member Functions inherited from dyno::STLBuffer< T >
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

- Public Types inherited from dyno::STLBuffer< T >
using iterator = T *
 
- Protected Member Functions inherited from dyno::STLBuffer< T >
DYN_FUNC TbufferEnd ()
 
- Protected Attributes inherited from dyno::STLBuffer< T >
uint m_maxSize = 0
 
Tm_startLoc = nullptr
 

Detailed Description

template<typename T>
class dyno::Set< T >

An CPU/GPU implementation of the standard set suitable for small-size data.

Be aware do not use this structure if the data size is large. The computation complexity is O(n^2) for some specific situation. All elements are organized in ascending order

Template Parameters
T

Definition at line 19 of file Set.h.

Constructor & Destructor Documentation

◆ Set()

template<typename T>
DYN_FUNC dyno::Set< T >::Set ( )

Definition at line 8 of file Set.inl.

Here is the call graph for this function:

Member Function Documentation

◆ begin()

template<typename T>
DYN_FUNC iterator dyno::Set< T >::begin ( )
inline

Definition at line 26 of file Set.h.

◆ clear()

template<typename T>
DYN_FUNC void dyno::Set< T >::clear ( )

Definition at line 59 of file Set.inl.

◆ count()

template<typename T>
DYN_FUNC uint dyno::Set< T >::count ( T val)

Definition at line 71 of file Set.inl.

Here is the call graph for this function:

◆ empty()

template<typename T>
DYN_FUNC bool dyno::Set< T >::empty ( )

Definition at line 77 of file Set.inl.

◆ end()

template<typename T>
DYN_FUNC iterator dyno::Set< T >::end ( )
inline

Definition at line 30 of file Set.h.

◆ erase() [1/2]

template<typename T>
DYN_FUNC int dyno::Set< T >::erase ( const T val)

◆ erase() [2/2]

template<typename T>
DYN_FUNC void dyno::Set< T >::erase ( T * val_ptr)

◆ find()

template<typename T>
DYN_FUNC T * dyno::Set< T >::find ( T val)

Definition at line 14 of file Set.inl.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ insert()

template<typename T>
DYN_FUNC T * dyno::Set< T >::insert ( T val)

Definition at line 23 of file Set.inl.

Here is the call graph for this function:

◆ size()

template<typename T>
DYN_FUNC uint dyno::Set< T >::size ( )

Definition at line 65 of file Set.inl.

Member Data Documentation

◆ m_size

template<typename T>
uint dyno::Set< T >::m_size = 0
private

Definition at line 47 of file Set.h.


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