Clarisse 5.0 SP8 SDK  5.0.5.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Classes | Public Member Functions | Friends | List of all members
CoreHashTableSparse< K, V > Class Template Reference

Memory efficient template collection of Key/Value objects couples. Used when there is a small number of items in the hash table. More...

Classes

class  Iterator
 

Public Member Functions

 CoreHashTableSparse (const unsigned int &hash_size=16)
 
 CoreHashTableSparse (const CoreHashTableSparse &src)
 
bool reserve (const unsigned int &capacity, const bool &preserve_items=false)
 
void add (const T &key, const U &item)
 add a new key/value couple in the hash table, only if key does not already exist. If key already exists, set its value.
 
void add (T &&key, U &&item)
 add a new key/value couple in the hash table, only if key does not already exist. If key already exists, set its value.
 
U & get_value (const T &key) const
 Get a value corresponding to a given key. Asserts if their is no value associated to key.
 
void remove (const T &key)
 
void remove_all ()
 
const unsigned int & get_count () const
 
U * is_key_exists (const T &key) const
 
CoreArray< T > get_keys () const
 
CoreArray< U > get_values () const
 
void copy_from (const CoreHashTableSparse &src)
 
CoreHashTableSparse< T, U > & operator= (const CoreHashTableSparse &src)
 
U & operator[] (const T &key)
 
const U & operator[] (const T &key) const
 
size_t get_memory_size () const
 
CoreHashTableIterator< T, U, true > begin (void) const
 
CoreHashTableIterator< T, U,
false > 
begin (void)
 
CoreHashTableIterator< T, U, true > end (void) const
 
CoreHashTableIterator< T, U,
false > 
end (void)
 

Friends

class CoreHashTable< T, U >
 
class CoreHashTableIterator< T, U, false >
 
class CoreHashTableIterator< T, U, true >
 

Detailed Description

template<class K, class V>
class CoreHashTableSparse< K, V >

Memory efficient template collection of Key/Value objects couples. Used when there is a small number of items in the hash table.