Go to the source code of this file.
Data Structures | |
struct | InsSortNode |
struct | BinaryHeapNode |
struct | Queue |
struct | HashNode |
struct | Hash |
Defines | |
#define | BINARY_HEAP_BLOCKSIZE_BITS 10 |
Typedefs | |
typedef bool | Queue_PushProc (Queue *q, void *item, int priority) |
typedef void * | Queue_PopProc (Queue *q) |
typedef bool | Queue_DeleteProc (Queue *q, void *item, int priority) |
typedef void | Queue_ClearProc (Queue *q, bool free_values) |
typedef void | Queue_FreeProc (Queue *q, bool free_values) |
typedef uint | Hash_HashProc (uint key1, uint key2) |
Generates a hash code from the given key pair. | |
Functions | |
void | init_InsSort (Queue *q) |
Insertion Sorter. | |
void | init_BinaryHeap (Queue *q, uint max_size) |
Initializes a binary heap and allocates internal memory for maximum of max_size elements. | |
void * | Hash_Delete (Hash *h, uint key1, uint key2) |
Deletes the value with the specified key pair from the hash and returns that value. | |
void * | Hash_Set (Hash *h, uint key1, uint key2, void *value) |
Sets the value associated with the given key pair to the given value. | |
void * | Hash_Get (const Hash *h, uint key1, uint key2) |
Gets the value associated with the given key pair, or NULL when it is not present. | |
void | init_Hash (Hash *h, Hash_HashProc *hash, uint num_buckets) |
Builds a new hash in an existing struct. | |
void | delete_Hash (Hash *h, bool free_values) |
Deletes the hash and cleans up. | |
void | clear_Hash (Hash *h, bool free_values) |
Cleans the hash, but keeps the memory allocated. | |
uint | Hash_Size (const Hash *h) |
Gets the current size of the Hash. |
Definition in file queue.h.
typedef uint Hash_HashProc(uint key1, uint key2) |
void delete_Hash | ( | Hash * | h, | |
bool | free_values | |||
) |
void* Hash_Delete | ( | Hash * | h, | |
uint | key1, | |||
uint | key2 | |||
) |
Deletes the value with the specified key pair from the hash and returns that value.
Returns NULL when the value was not present. The value returned is _not_ free()'d!
Definition at line 484 of file queue.cpp.
References Hash_FindNode().
void* Hash_Get | ( | const Hash * | h, | |
uint | key1, | |||
uint | key2 | |||
) |
Gets the value associated with the given key pair, or NULL when it is not present.
Definition at line 559 of file queue.cpp.
References Hash_FindNode().
void* Hash_Set | ( | Hash * | h, | |
uint | key1, | |||
uint | key2, | |||
void * | value | |||
) |
Sets the value associated with the given key pair to the given value.
Returns the old value if the value was replaced, NULL when it was not yet present.
Definition at line 528 of file queue.cpp.
References Hash_FindNode().
void init_Hash | ( | Hash * | h, | |
Hash_HashProc * | hash, | |||
uint | num_buckets | |||
) |