OpenAddressFileHash.h
Go to the documentation of this file.
1 /******************************************************************************/
36 /******************************************************************************/
37 
38 #ifndef PROJECT_OPENADDRESSFILEHASH_H
39 #define PROJECT_OPENADDRESSFILEHASH_H
40 
41 #include "Dictionary.h"
42 #include "../key_value/kv_system.h"
43 #include "../dictionary/open_address_file_hash/open_address_file_hash_dictionary_handler.h"
44 
45 template<typename K, typename V>
46 class OpenAddressFileHash:public Dictionary<K, V> {
47 public:
48 
72  ion_dictionary_size_t dictionary_size
73 ) {
74  oafdict_init(&this->handler);
75 
76  this->initializeDictionary(id, key_type, key_size, value_size, dictionary_size);
77 }
78 };
79 
80 #endif /* PROJECT_OPENADDRESSFILEHASH_H */
ion_key_type_t key_type
Definition: Dictionary.h:53
enum ION_KEY_TYPE ion_key_type_t
This is the available key types for ION_DB. All types will be based on system defines.
int ion_value_size_t
The size (length) of a dictionary value in bytes.
Definition: kv_system.h:256
OpenAddressFileHash(ion_dictionary_id_t id, ion_key_type_t key_type, ion_key_size_t key_size, ion_value_size_t value_size, ion_dictionary_size_t dictionary_size)
Registers a specific open address file hash dictionary instance.
ion_value_size_t value_size
Definition: Dictionary.h:55
unsigned int ion_dictionary_id_t
A type used to identify dictionaries, specifically in the master table.
unsigned int ion_dictionary_size_t
The implementation specific size of the dictionary.
Definition: kv_system.h:264
ion_key_size_t key_size
Definition: Dictionary.h:54
void oafdict_init(ion_dictionary_handler_t *handler)
Registers a specific handler for a dictionary instance.
ion_dictionary_handler_t handler
Definition: Dictionary.h:51
Interface describing how user interacts with general dictionaries using C++.
int ion_key_size_t
The size (length) of a dictionary key in bytes.
Definition: kv_system.h:251
ion_err_t initializeDictionary(ion_dictionary_id_t dict_id, ion_key_type_t k_type, ion_key_size_t k_size, ion_value_size_t v_size, ion_dictionary_size_t dictionary_size)
Creates a dictionary with a specific identifier (for use through the master table).
Definition: Dictionary.h:84