gdsl  1.7
gdsl_interval_heap.h File Reference

Go to the source code of this file.

Typedefs

typedef struct heap * gdsl_interval_heap_t
 GDSL interval heap type.

Functions

gdsl_interval_heap_t gdsl_interval_heap_alloc (const char *NAME, gdsl_alloc_func_t ALLOC_F, gdsl_free_func_t FREE_F, gdsl_compare_func_t COMP_F)
 Create a new interval heap.
void gdsl_interval_heap_free (gdsl_interval_heap_t H)
 Destroy an interval heap.
void gdsl_interval_heap_flush (gdsl_interval_heap_t H)
 Flush an interval heap.
const char * gdsl_interval_heap_get_name (const gdsl_interval_heap_t H)
 Get the name of an interval heap.
ulong gdsl_interval_heap_get_size (const gdsl_interval_heap_t H)
 Get the size of a interval heap.
void gdsl_interval_heap_set_max_size (const gdsl_interval_heap_t H, ulong size)
 Set the maximum size of the interval heap.
bool gdsl_interval_heap_is_empty (const gdsl_interval_heap_t H)
 Check if an interval heap is empty.
gdsl_interval_heap_t gdsl_interval_heap_set_name (gdsl_interval_heap_t H, const char *NEW_NAME)
 Set the name of an interval heap.
gdsl_element_t gdsl_interval_heap_insert (gdsl_interval_heap_t H, void *VALUE)
 Insert an element into an interval heap (PUSH).
gdsl_element_t gdsl_interval_heap_remove_max (gdsl_interval_heap_t H)
 Remove the maximum element from an interval heap (POP).
gdsl_element_t gdsl_interval_heap_remove_min (gdsl_interval_heap_t H)
 Remove the minimum element from an interval heap (POP).
gdsl_element_t gdsl_interval_heap_get_min (const gdsl_interval_heap_t H)
 Get the minimum element.
gdsl_element_t gdsl_interval_heap_get_max (const gdsl_interval_heap_t H)
 Get the maximum element.
gdsl_interval_heap_t gdsl_interval_heap_delete_min (gdsl_interval_heap_t H)
 Delete the minimum element from an interval heap.
gdsl_interval_heap_t gdsl_interval_heap_delete_max (gdsl_interval_heap_t H)
 Delete the maximum element from an interval heap.
gdsl_element_t gdsl_interval_heap_map_forward (const gdsl_interval_heap_t H, gdsl_map_func_t MAP_F, void *USER_DATA)
 Parse a interval heap.
void gdsl_interval_heap_write (const gdsl_interval_heap_t H, gdsl_write_func_t WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)
 Write all the elements of an interval heap to a file.
void gdsl_interval_heap_write_xml (const gdsl_interval_heap_t H, gdsl_write_func_t WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)
 Write the content of an interval heap to a file into XML.
void gdsl_interval_heap_dump (const gdsl_interval_heap_t H, gdsl_write_func_t WRITE_F, FILE *OUTPUT_FILE, void *USER_DATA)
 Dump the internal structure of an interval heap to a file.