FD.io VPP  v16.06
Vector Packet Processing
fheap.c File Reference
+ Include dependency graph for fheap.c:

Go to the source code of this file.

Functions

always_inline fheap_node_tfheap_get_node (fheap_t *f, u32 i)
 
always_inline fheap_node_tfheap_get_root (fheap_t *f)
 
static void fheap_validate (fheap_t *f)
 
always_inline void fheap_node_add_sibling (fheap_t *f, u32 ni, u32 ni_to_add)
 
void fheap_add (fheap_t *f, u32 ni, u32 key)
 
always_inline u32 fheap_node_remove_internal (fheap_t *f, u32 ni, u32 invalidate)
 
always_inline u32 fheap_node_remove (fheap_t *f, u32 ni)
 
always_inline u32 fheap_node_remove_and_invalidate (fheap_t *f, u32 ni)
 
static void fheap_link_root (fheap_t *f, u32 ni)
 
u32 fheap_del_min (fheap_t *f, u32 *min_key)
 
static void fheap_mark_parent (fheap_t *f, u32 pi)
 
void fheap_decrease_key (fheap_t *f, u32 ni, u32 new_key)
 
void fheap_del (fheap_t *f, u32 ni)
 

Function Documentation

void fheap_add ( fheap_t f,
u32  ni,
u32  key 
)

Definition at line 147 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void fheap_decrease_key ( fheap_t f,
u32  ni,
u32  new_key 
)

Definition at line 385 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void fheap_del ( fheap_t f,
u32  ni 
)

Definition at line 407 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

u32 fheap_del_min ( fheap_t f,
u32 min_key 
)

Definition at line 274 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

always_inline fheap_node_t* fheap_get_node ( fheap_t f,
u32  i 
)

Definition at line 19 of file fheap.c.

+ Here is the caller graph for this function:

always_inline fheap_node_t* fheap_get_root ( fheap_t f)

Definition at line 23 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void fheap_link_root ( fheap_t f,
u32  ni 
)
static

Definition at line 220 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void fheap_mark_parent ( fheap_t f,
u32  pi 
)
static

Definition at line 356 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

always_inline void fheap_node_add_sibling ( fheap_t f,
u32  ni,
u32  ni_to_add 
)

Definition at line 117 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

always_inline u32 fheap_node_remove ( fheap_t f,
u32  ni 
)

Definition at line 214 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

always_inline u32 fheap_node_remove_and_invalidate ( fheap_t f,
u32  ni 
)

Definition at line 217 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

always_inline u32 fheap_node_remove_internal ( fheap_t f,
u32  ni,
u32  invalidate 
)

Definition at line 179 of file fheap.c.

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void fheap_validate ( fheap_t f)
static

Definition at line 26 of file fheap.c.

+ Here is the caller graph for this function: