openCARP
Doxygen code documentation for the open cardiac electrophysiology simulator openCARP
Classes | Namespaces | Typedefs | Functions | Variables
hashmap.hpp File Reference

Classes similar to unordered_set and unordered_map, but with better performance. More...

#include <stdint.h>
#include <limits.h>
#include <stdexcept>
#include <algorithm>
#include <string>
#include <vector>
Include dependency graph for hashmap.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  hashmap::hash_ops< T >
 Base hashing class. More...
 
struct  hashmap::hash_int_ops
 
struct  hashmap::hash_ops< int32_t >
 
struct  hashmap::hash_ops< int64_t >
 
struct  hashmap::hash_ops< std::string >
 
struct  hashmap::hash_ops< std::pair< P, Q > >
 
struct  hashmap::hash_ops< std::tuple< T... > >
 
struct  hashmap::hash_ops< std::vector< T > >
 
struct  hashmap::hash_cstr_ops
 
struct  hashmap::hash_ptr_ops
 
struct  hashmap::hash_obj_ops
 
class  hashmap::unordered_map< K, T, OPS >
 
class  hashmap::idict< K, offset, OPS >
 
class  hashmap::unordered_set< K, OPS >
 Custom unordered_set implementation. More...
 
class  hashmap::mfp< K, OPS >
 
class  hashmap::unordered_map< K, T, OPS >
 
class  hashmap::unordered_map< K, T, OPS >::const_iterator
 Const iterator. More...
 
class  hashmap::unordered_map< K, T, OPS >::iterator
 Default iterator. More...
 
class  hashmap::unordered_set< K, OPS >
 Custom unordered_set implementation. More...
 
struct  hashmap::unordered_set< K, OPS >::entry_t
 internal entry type More...
 
class  hashmap::unordered_set< K, OPS >::const_iterator
 
class  hashmap::unordered_set< K, OPS >::iterator
 
class  hashmap::idict< K, offset, OPS >
 
class  hashmap::mfp< K, OPS >
 

Namespaces

 hashmap
 

Typedefs

typedef unsigned long int hm_uint
 
typedef long int hm_int
 

Functions

hm_uint hashmap::mkhash (hm_uint a, hm_uint b)
 
hm_uint hashmap::mkhash_add (hm_uint a, hm_uint b)
 
hm_uint hashmap::mkhash_xorshift (hm_uint a)
 
template<typename T >
hm_uint hashmap::mkhash (const T &v)
 
hm_int hashmap::hashtable_size (hm_int min_size)
 

Variables

const hm_int hashmap::hashtable_size_trigger = 2
 
const hm_int hashmap::hashtable_size_factor = 3
 
const hm_uint hashmap::mkhash_init = 5381
 

Detailed Description

Classes similar to unordered_set and unordered_map, but with better performance.

This code is based on hashlib.h by Clifford Wolf cliff.nosp@m.ord@.nosp@m.cliff.nosp@m.ord..nosp@m.at.

Author
Aurel Neic
Version
Date
2017-04-07

Definition in file hashmap.hpp.

Typedef Documentation

◆ hm_int

typedef long int hm_int

Definition at line 44 of file hashmap.hpp.

◆ hm_uint

typedef unsigned long int hm_uint

Definition at line 43 of file hashmap.hpp.