include/skiplist.h File Reference

Go to the source code of this file.

Data Structures

struct  skiplistnode_struct
struct  skiplist_struct

Defines

#define SKIPLIST_OK   0
#define SKIPLIST_ERROR_ARGS   1
#define SKIPLIST_ERROR_MEMORY   2
#define SKIPLIST_ERROR_DUPLICATE   3

Typedefs

typedef skiplistnode_struct skiplistnode
typedef skiplist_struct skiplist

Functions

skiplistskiplist_new (int max_levels, float level_probability, int allow_duplicates, int append_duplicates, int(*compare_function)(void *, void *))
skiplistnodeskiplist_new_node (skiplist *list, int node_levels)
int skiplist_insert (skiplist *list, void *data)
int skiplist_random_level (skiplist *list)
int skiplist_empty (skiplist *list)
int skiplist_free (skiplist **list)
void * skiplist_peek (skiplist *)
void * skiplist_pop (skiplist *)
void * skiplist_get_first (skiplist *list, void **node_ptr)
void * skiplist_get_next (void **node_ptr)
void * skiplist_find_first (skiplist *list, void *data, void **node_ptr)
void * skiplist_find_next (skiplist *list, void *data, void **node_ptr)
int skiplist_delete (skiplist *list, void *data)
int skiplist_delete_first (skiplist *list, void *data)
int skiplist_delete_all (skiplist *list, void *data)
int skiplist_delete_node (skiplist *list, void *node_ptr)


Define Documentation

#define SKIPLIST_ERROR_ARGS   1

#define SKIPLIST_ERROR_DUPLICATE   3

#define SKIPLIST_ERROR_MEMORY   2

#define SKIPLIST_OK   0


Typedef Documentation

typedef struct skiplist_struct skiplist

typedef struct skiplistnode_struct skiplistnode


Function Documentation

int skiplist_delete ( skiplist list,
void *  data 
)

int skiplist_delete_all ( skiplist list,
void *  data 
)

int skiplist_delete_first ( skiplist list,
void *  data 
)

int skiplist_delete_node ( skiplist list,
void *  node_ptr 
)

int skiplist_empty ( skiplist list  ) 

void* skiplist_find_first ( skiplist list,
void *  data,
void **  node_ptr 
)

void* skiplist_find_next ( skiplist list,
void *  data,
void **  node_ptr 
)

int skiplist_free ( skiplist **  list  ) 

void* skiplist_get_first ( skiplist list,
void **  node_ptr 
)

void* skiplist_get_next ( void **  node_ptr  ) 

int skiplist_insert ( skiplist list,
void *  data 
)

skiplist* skiplist_new ( int  max_levels,
float  level_probability,
int  allow_duplicates,
int  append_duplicates,
int(*)(void *, void *)  compare_function 
)

skiplistnode* skiplist_new_node ( skiplist list,
int  node_levels 
)

void* skiplist_peek ( skiplist  ) 

void* skiplist_pop ( skiplist  ) 

int skiplist_random_level ( skiplist list  ) 


Generated on Wed Mar 30 17:22:23 2011 for icinga-core by  doxygen 1.4.7