Vlasiator ebf0dd394 on dev (v5.4.0 + 1054 commits)
Loading...
Searching...
No Matches
OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET > Class Template Reference

#include <open_bucket_hashtable.h>

Classes

class  iterator
class  const_iterator

Public Member Functions

 OpenBucketHashtable ()
void rehash (int newSizePower)
LID & at (const GID &key)
const LID & at (const GID &key) const
LID & operator[] (const GID &key)
size_t size () const
size_t bucket_count () const
size_t count (const GID &key) const
void clear ()
iterator begin ()
const_iterator begin () const
iterator end ()
const_iterator end () const
iterator find (GID key)
const const_iterator find (GID key) const
std::pair< iterator, bool > insert (std::pair< GID, LID > newEntry)
iterator erase (iterator keyPos)
size_t erase (const GID &key)
void swap (OpenBucketHashtable< GID, LID > &other)

Private Member Functions

uint32_t fibonacci_hash (GID in) const
uint32_t hash (GID in) const

Static Private Member Functions

static uint32_t fnv_1a (const void *chunk, size_t bytes)

Private Attributes

int sizePower
size_t fill
std::vector< std::pair< GID, LID > > buckets

Detailed Description

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
class OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >

Definition at line 31 of file open_bucket_hashtable.h.

Constructor & Destructor Documentation

◆ OpenBucketHashtable()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::OpenBucketHashtable ( )
inline

Definition at line 67 of file open_bucket_hashtable.h.

Here is the caller graph for this function:

Member Function Documentation

◆ at() [1/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
LID & OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::at ( const GID & key)
inline

Definition at line 110 of file open_bucket_hashtable.h.

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

◆ at() [2/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
const LID & OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::at ( const GID & key) const
inline

Definition at line 134 of file open_bucket_hashtable.h.

Here is the call graph for this function:

◆ begin() [1/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
iterator OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::begin ( )
inline

Definition at line 265 of file open_bucket_hashtable.h.

Here is the call graph for this function:

◆ begin() [2/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
const_iterator OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::begin ( ) const
inline

Definition at line 273 of file open_bucket_hashtable.h.

Here is the call graph for this function:

◆ bucket_count()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
size_t OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::bucket_count ( ) const
inline

Definition at line 161 of file open_bucket_hashtable.h.

◆ clear()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
void OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::clear ( )
inline

Definition at line 171 of file open_bucket_hashtable.h.

◆ count()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
size_t OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::count ( const GID & key) const
inline

Definition at line 163 of file open_bucket_hashtable.h.

Here is the call graph for this function:

◆ end() [1/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
iterator OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::end ( )
inline

Definition at line 282 of file open_bucket_hashtable.h.

Here is the caller graph for this function:

◆ end() [2/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
const_iterator OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::end ( ) const
inline

Definition at line 283 of file open_bucket_hashtable.h.

◆ erase() [1/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
size_t OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::erase ( const GID & key)
inline

Definition at line 380 of file open_bucket_hashtable.h.

Here is the call graph for this function:

◆ erase() [2/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
iterator OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::erase ( iterator keyPos)
inline

Definition at line 340 of file open_bucket_hashtable.h.

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

◆ fibonacci_hash()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
uint32_t OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::fibonacci_hash ( GID in) const
inlineprivate

Definition at line 38 of file open_bucket_hashtable.h.

Here is the caller graph for this function:

◆ find() [1/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
iterator OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::find ( GID key)
inline

Definition at line 286 of file open_bucket_hashtable.h.

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

◆ find() [2/2]

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
const const_iterator OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::find ( GID key) const
inline

Definition at line 308 of file open_bucket_hashtable.h.

Here is the call graph for this function:

◆ fnv_1a()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
uint32_t OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::fnv_1a ( const void * chunk,
size_t bytes )
inlinestaticprivate

Definition at line 45 of file open_bucket_hashtable.h.

Here is the caller graph for this function:

◆ hash()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
uint32_t OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::hash ( GID in) const
inlineprivate

Definition at line 56 of file open_bucket_hashtable.h.

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

◆ insert()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
std::pair< iterator, bool > OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::insert ( std::pair< GID, LID > newEntry)
inline

Definition at line 331 of file open_bucket_hashtable.h.

Here is the call graph for this function:

◆ operator[]()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
LID & OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::operator[] ( const GID & key)
inline

Definition at line 156 of file open_bucket_hashtable.h.

Here is the call graph for this function:

◆ rehash()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
void OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::rehash ( int newSizePower)
inline

Definition at line 71 of file open_bucket_hashtable.h.

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

◆ size()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
size_t OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::size ( ) const
inline

Definition at line 159 of file open_bucket_hashtable.h.

◆ swap()

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
void OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::swap ( OpenBucketHashtable< GID, LID > & other)
inline

Definition at line 390 of file open_bucket_hashtable.h.

Here is the call graph for this function:

Member Data Documentation

◆ buckets

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
std::vector<std::pair<GID, LID> > OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::buckets
private

Definition at line 35 of file open_bucket_hashtable.h.

◆ fill

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
size_t OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::fill
private

Definition at line 34 of file open_bucket_hashtable.h.

◆ sizePower

template<typename GID, typename LID, int maxBucketOverflow = 4, GID EMPTYBUCKET = vmesh::INVALID_GLOBALID>
int OpenBucketHashtable< GID, LID, maxBucketOverflow, EMPTYBUCKET >::sizePower
private

Definition at line 33 of file open_bucket_hashtable.h.


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