RTEMS CPU Kit with SuperCore  4.10.99.0
Data Structures | Defines | Typedefs | Functions
rtems/rbheap.h File Reference

Red-Black Tree Heap API. More...

#include <rtems.h>
#include <rtems/chain.h>
#include <rtems/rbtree.h>
Include dependency graph for rbheap.h:

Go to the source code of this file.

Data Structures

struct  rtems_rbheap_chunk
 Red-black heap chunk descriptor. More...
struct  rtems_rbheap_control
 Red-black heap control. More...

Defines

#define rtems_rbheap_chunk_of_node(node)   RTEMS_CONTAINER_OF(node, rtems_rbheap_chunk, tree_node)

Typedefs

typedef struct rtems_rbheap_control rtems_rbheap_control
typedef void(* rtems_rbheap_extend_descriptors )(rtems_rbheap_control *control)
 Handler to extend the available chunk descriptors.

Functions

rtems_status_code rtems_rbheap_initialize (rtems_rbheap_control *control, void *area_begin, uintptr_t area_size, uintptr_t alignment, rtems_rbheap_extend_descriptors extend_descriptors, void *handler_arg)
 Initializes the red-black tree heap control.
void * rtems_rbheap_allocate (rtems_rbheap_control *control, size_t size)
 Allocates a chunk of memory of at least size bytes from the red-black tree heap control.
rtems_status_code rtems_rbheap_free (rtems_rbheap_control *control, void *ptr)
 Frees a chunk of memory ptr allocated from the red-black tree heap control.
void rtems_rbheap_extend_descriptors_never (rtems_rbheap_control *control)
 Chunk descriptor extend handler that does nothing.
void rtems_rbheap_extend_descriptors_with_malloc (rtems_rbheap_control *control)
 Chunk descriptor extend handler that uses malloc().

Detailed Description

Red-Black Tree Heap API.