#include <volume_io/internal_volume_io.h>
#include <bicpl/data_structures.h>
#include <bicpl/prog_utils.h>
Include dependency graph for skiplist.c:
Go to the source code of this file.
Data Structures | |
struct | update_struct |
Defines | |
#define | MAX_SKIP_LEVELS 50 |
#define | SKIP_P 0.5 |
#define | ALLOC_SKIP_STRUCT(ptr, n_level) ALLOC_VAR_SIZED_STRUCT( ptr, skip_struct *, n_level ) |
Functions | |
private int | get_random_level (void) |
public void | initialize_skiplist (skiplist_struct *skiplist) |
private BOOLEAN | find_data_position (skiplist_struct *skiplist, float key, update_struct *update) |
private void | insert_data_in_skiplist (skiplist_struct *skiplist, update_struct *update, float key, void *data_ptr) |
private void | delete_entry_from_skiplist (skiplist_struct *skiplist, update_struct *update) |
public void | delete_skiplist (skiplist_struct *skiplist) |
public BOOLEAN | search_skiplist (skiplist_struct *skiplist, float key, void **data_ptr) |
public BOOLEAN | search_skiplist_and_return_pointer (skiplist_struct *skiplist, float key, skip_struct **entry_ptr, void **data_ptr) |
public BOOLEAN | insert_in_skiplist (skiplist_struct *skiplist, float key, void *data_ptr) |
public BOOLEAN | delete_from_skiplist (skiplist_struct *skiplist, float key, void **data_ptr) |
public BOOLEAN | get_first_skiplist_entry (skiplist_struct *skiplist, skip_struct **entry_ptr, float *key, void **data_ptr) |
public BOOLEAN | get_next_skiplist_entry (skip_struct **entry_ptr, float *key, void **data_ptr) |
|
Definition at line 47 of file skiplist.c. Referenced by initialize_skiplist(), and insert_data_in_skiplist(). |
|
Definition at line 39 of file skiplist.c. Referenced by get_random_level(), and initialize_skiplist(). |
|
Definition at line 40 of file skiplist.c. Referenced by get_random_level(). |
|
Definition at line 189 of file skiplist.c. References skip_struct::forward, skiplist_struct::header, skiplist_struct::level, and update_struct::update. Referenced by delete_from_skiplist(). |
|
Definition at line 366 of file skiplist.c. References skip_struct::data_ptr, delete_entry_from_skiplist(), find_data_position(), skip_struct::forward, and update_struct::update. |
|
Definition at line 253 of file skiplist.c. References skip_struct::forward, and skiplist_struct::header. |
|
Definition at line 91 of file skiplist.c. References skip_struct::forward, skiplist_struct::header, skip_struct::key, skiplist_struct::level, and update_struct::update. Referenced by delete_from_skiplist(), insert_in_skiplist(), search_skiplist(), and search_skiplist_and_return_pointer(). |
|
Definition at line 403 of file skiplist.c. References skip_struct::forward, skiplist_struct::header, and skip_struct::key. |
|
Definition at line 435 of file skiplist.c. References skip_struct::forward, and skip_struct::key. |
|
Definition at line 228 of file skiplist.c. References get_random_0_to_1(), MAX_SKIP_LEVELS, and SKIP_P. Referenced by insert_data_in_skiplist(). |
|
Definition at line 63 of file skiplist.c. References ALLOC_SKIP_STRUCT, skip_struct::forward, skiplist_struct::header, skiplist_struct::level, and MAX_SKIP_LEVELS. |
|
Definition at line 133 of file skiplist.c. References ALLOC_SKIP_STRUCT, skip_struct::data_ptr, skip_struct::forward, get_random_level(), skiplist_struct::header, skip_struct::key, skiplist_struct::level, and update_struct::update. Referenced by insert_in_skiplist(). |
|
Definition at line 335 of file skiplist.c. References find_data_position(), and insert_data_in_skiplist(). |
|
Definition at line 284 of file skiplist.c. References skip_struct::data_ptr, find_data_position(), skip_struct::forward, and update_struct::update. |
|
Definition at line 300 of file skiplist.c. References skip_struct::data_ptr, find_data_position(), skip_struct::forward, and update_struct::update. |