Home
last modified time | relevance | path

Searched refs:pheap_node_id_t (Results 1 – 2 of 2) sorted by relevance

/hal_rpi_pico-latest/src/common/pico_util/include/pico/util/
Dpheap.h44 typedef uint8_t pheap_node_id_t; typedef
46 typedef uint16_t pheap_node_id_t;
52 pheap_node_id_t child, sibling, parent;
61 typedef bool (*pheap_comparator)(void *user_data, pheap_node_id_t a, pheap_node_id_t b);
67 pheap_node_id_t max_nodes;
68 pheap_node_id_t root_id;
70 pheap_node_id_t free_head_id;
71 pheap_node_id_t free_tail_id;
107 static inline pheap_node_t *ph_get_node(pheap_t *heap, pheap_node_id_t id) { in ph_get_node()
113 static void ph_add_child_node(pheap_t *heap, pheap_node_id_t parent_id, pheap_node_id_t child_id) { in ph_add_child_node()
[all …]
/hal_rpi_pico-latest/src/common/pico_util/
Dpheap.c12 invalid_params_if(PHEAP, !max_nodes || max_nodes >= (1u << (8 * sizeof(pheap_node_id_t)))); in ph_create()
20 invalid_params_if(PHEAP, !max_nodes || max_nodes >= (1u << (8 * sizeof(pheap_node_id_t)))); in ph_post_alloc_init()
21 heap->max_nodes = (pheap_node_id_t) max_nodes; in ph_post_alloc_init()
31 for(pheap_node_id_t i = 1; i < heap->max_nodes; i++) { in ph_clear()
32 ph_get_node(heap, i)->sibling = (pheap_node_id_t)(i + 1); in ph_clear()
42 pheap_node_id_t ph_merge_two_pass(pheap_t *heap, pheap_node_id_t id) { in ph_merge_two_pass()
46 pheap_node_id_t a, b, new_node; in ph_merge_two_pass()
55 static pheap_node_id_t ph_remove_any_head(pheap_t *heap, pheap_node_id_t root_id, bool free) { in ph_remove_any_head()
60 pheap_node_id_t new_root_id = ph_merge_two_pass(heap, ph_get_node(heap, root_id)->child); in ph_remove_any_head()
76 pheap_node_id_t ph_remove_head(pheap_t *heap, bool free) { in ph_remove_head()
[all …]