#include <freeradius-devel/libradius.h>
#include <freeradius-devel/heap.h>
Go to the source code of this file.
Definition at line 16 of file heap.c.
Data Fields |
fr_heap_cmp_t |
cmp |
|
size_t |
num_elements |
|
size_t |
offset |
|
void ** |
p |
|
size_t |
size |
|
#define HEAP_LEFT |
( |
|
x | ) |
( 2*(x) + 1 ) |
#define HEAP_PARENT |
( |
|
x | ) |
( ( (x) - 1 ) / 2 ) |
#define HEAP_SWAP |
( |
|
a, |
|
|
|
b |
|
) |
| { void *_tmp = a; a = b; b = _tmp; } |
#define RESET_OFFSET |
( |
|
heap, |
|
|
|
node |
|
) |
| |
Value:if (heap->offset) \
*((int *)(((uint8_t *)heap->p[node]) + heap->offset)) = -1
Definition at line 88 of file heap.c.
#define SET_OFFSET |
( |
|
heap, |
|
|
|
node |
|
) |
| |
Value:if (heap->offset) \
*((int *)(((uint8_t *)heap->p[node]) + heap->offset)) = node
Definition at line 80 of file heap.c.
static int fr_heap_bubble |
( |
fr_heap_t * |
hp, |
|
|
size_t |
child |
|
) |
| |
|
static |
int fr_heap_extract |
( |
fr_heap_t * |
hp, |
|
|
void * |
data |
|
) |
| |
int fr_heap_insert |
( |
fr_heap_t * |
hp, |
|
|
void * |
data |
|
) |
| |
size_t fr_heap_num_elements |
( |
fr_heap_t * |
hp | ) |
|