MasterTable.h
Go to the documentation of this file.
135 .id = dictionary->dict.instance->id, .use_type = 0, .type = dictionary->dict.instance->key_type, .key_size = dictionary->dict.instance->record.key_size, .value_size = dictionary->dict.instance->record.value_size, .dictionary_size = dictionary_size, .dictionary_type = dictionary->dict.instance->type
329 dictionary = new OpenAddressFileHash<K, V>(id, key_type, key_size, value_size, dictionary_size);
359 if ((dictionary_type != dictionary_type_error_t) && (ion_dictionary_status_error != dictionary->dict.status)) {
Definition: kv_system.h:141
C++ implementation of a B+ tree dictionary.
Definition: OpenAddressFileHash.h:46
ion_err_t ion_lookup_in_master_table(ion_dictionary_id_t id, ion_dictionary_config_info_t *config)
Looks up the config of the given id.
Definition: ion_master_table.c:379
Definition: kv_system.h:160
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.
ion_byte_t ion_dict_use_t
A type describing how a dictionary is used.
Definition: dictionary_types.h:59
ion_dictionary_type_t dictionary_type
Definition: dictionary_types.h:196
Definition: kv_system.h:147
ion_err_t findByUse(ion_dictionary_config_info_t *config, ion_dict_use_t use_type, char whence)
Find first or last dictionary in master table with a given use.
Definition: MasterTable.h:201
The C++ implementation of a linear hash dictionary.
ion_err_t ion_switch_handler(ion_dictionary_type_t type, ion_dictionary_handler_t *handler)
Retrieves the type of dictionary stored under a particular id in the master table.
Definition: ion_master_table.c:537
Definition: LinearHash.h:45
enum ION_DICTIONARY_TYPE ion_dictionary_type_t
This is the available dictionary types for ION_DB. All types will be based on system defines...
ion_err_t openDictionary(Dictionary< K, V > *dictionary, ion_dictionary_id_t id)
Finds the target dictionary and opens it.
Definition: MasterTable.h:232
unsigned int ion_dictionary_id_t
A type used to identify dictionaries, specifically in the master table.
Definition: dictionary_types.h:51
unsigned int ion_dictionary_size_t
The implementation specific size of the dictionary.
Definition: kv_system.h:264
Definition: SkipList.h:45
Struct containing details for opening a dictionary previously created.
Definition: dictionary_types.h:183
ion_err_t closeDictionary(Dictionary< K, V > *dictionary)
Closes a given dictionary.
Definition: MasterTable.h:268
ion_err_t ion_master_table_write(ion_dictionary_config_info_t *config, long where)
Write a record to the master table.
Definition: ion_master_table.c:44
Definition: BppTree.h:45
Definition: kv_system.h:139
ion_err_t open(ion_dictionary_config_info_t config_info)
Opens a dictionary, given the desired config.
Definition: Dictionary.h:230
A dictionary contains information regarding an instance of the storage element and the associated han...
Definition: dictionary_types.h:273
Definition: Dictionary.h:49
ion_err_t ion_delete_from_master_table(ion_dictionary_id_t id)
Deletes a dictionary from the master table.
Definition: ion_master_table.c:437
ion_err_t lookupMasterTable(ion_dictionary_id_t id, ion_dictionary_config_info_t *config)
Looks up the config of the given id.
Definition: MasterTable.h:176
Definition: kv_system.h:149
Definition: MasterTable.h:50
ion_err_t deleteFromMasterTable(ion_dictionary_id_t id)
Deletes a dictionary from the master table.
Definition: MasterTable.h:214
Definition: FlatFile.h:45
The C++ implementation of a skip list dictionary.
The C++ implementation of an open address hash based dictionary.
ion_dictionary_id_t ion_master_table_next_id
Master table resposible for managing instances.
Definition: ion_master_table.c:41
The C++ implementation of a flat file dictionary.
Definition: kv_system.h:151
ion_err_t closeAllMasterTable()
Closes the master table and all dictionary instances in it.
Definition: MasterTable.h:93
Interface describing how user interacts with general dictionaries using C++.
Definition: OpenAddressHash.h:45
Definition: kv_system.h:212
ion_err_t addToMasterTable(Dictionary< K, V > *dictionary, ion_dictionary_size_t dictionary_size)
Adds the given dictionary to the master table.
Definition: MasterTable.h:120
#define ION_MASTER_TABLE_WRITE_FROM_END
Definition: ion_master_table.h:65
ion_err_t ion_close_all_master_table(void)
Closes the master table and all dictionary instances within it.
Definition: ion_master_table.c:259
ion_err_t initializeHandler(ion_dictionary_type_t type)
Retrieves the type of dictionary stored under a particular id in the master table.
Definition: MasterTable.h:159
ion_err_t ion_find_by_use_master_table(ion_dictionary_config_info_t *config, ion_dict_use_t use_type, char whence)
Find first or last dictionary in master table with a given use.
Definition: ion_master_table.c:396
ion_err_t ion_master_table_get_next_id(ion_dictionary_id_t *id)
Returns the next dictionary ID, then increments.
Definition: ion_master_table.c:177
The C++ implementation of an open address file hash based dictionary.
ion_err_t deleteDictionary(Dictionary< K, V > *dictionary)
Definition: MasterTable.h:372
Dictionary< K, V > * initializeDictionary(ion_key_type_t key_type, K k, V v, ion_key_size_t key_size, ion_value_size_t value_size, ion_dictionary_size_t dictionary_size, ion_dictionary_type_t dictionary_type)
Creates a dictionary of a specified implementation.
Definition: MasterTable.h:299
A dictionary_handler is responsible for dealing with the specific interface for an underlying diction...
Definition: dictionary_types.h:207