Interface Documentation
Version: invalid
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
flecsi::topo::hash_table< KEY, TYPE > Struct Template Reference

#include <hash_table.hh>

Public Types

using id_t = util::id_t
 
using key_t = KEY
 
using type_t = TYPE
 

Static Public Member Functions

template<typename S >
static type_t * find (S &index_space, key_t key)
 Find a value in the hashtable While the value or a null key is not found we keep looping.
 
template<typename S , class... ARGS>
static type_t * insert (S &index_space, const key_t &key, ARGS &&... args)
 Insert an object in the hash map at a defined position This function tries to find the first available position in case of conflict using modulo method.
 
static size_t hash (const key_t &key)
 the Hash function transforming a key in position in the hash table.
 

Static Public Attributes

static constexpr size_t hash_bits_ = 22
 
static constexpr size_t hash_capacity_ = 1 << hash_bits_
 
static constexpr size_t hash_mask_ = (1 << hash_bits_) - 1
 
static constexpr size_t modulo = 5
 
static size_t collision = 0
 

Detailed Description

template<class KEY, class TYPE>
struct flecsi::topo::hash_table< KEY, TYPE >

Hash table class for the tree topology. This is a generic representation based on an index space implementing find insert and find functions


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