lv_tree.h
API reference for lv_tree.h
Tree. The tree nodes are dynamically allocated by the 'lv_mem' module.
Functions
misc/lv_tree.h:76function
lv_tree_node_create
Create a tree node.
lv_tree_node_t * lv_tree_node_create(const lv_tree_class_t *class_p, lv_tree_node_t *parent)| Name | Type | Description |
|---|---|---|
class_p | const lv_tree_class_t * | pointer to a class of the node |
parent | lv_tree_node_t * | pointer to the parent node (or NULL if it's the root node) |
Returns: lv_tree_node_t * — pointer to the new node
misc/lv_tree.h:82function
lv_tree_node_delete
Delete a tree node and all its children recursively.
void lv_tree_node_delete(lv_tree_node_t *node)| Name | Type | Description |
|---|---|---|
node | lv_tree_node_t * | pointer to the node to delete |
misc/lv_tree.h:94function
lv_tree_walk
Walk the tree recursively and call a callback function on each node.
bool lv_tree_walk(const lv_tree_node_t *node, lv_tree_walk_mode_t mode, lv_tree_traverse_cb_t cb, lv_tree_before_cb_t bcb, lv_tree_after_cb_t acb, void *user_data)| Name | Type | Description |
|---|---|---|
node | const lv_tree_node_t * | pointer to the root node of the tree |
mode | lv_tree_walk_mode_t | LV_TREE_WALK_PRE_ORDER or LV_TREE_WALK_POST_ORDER |
cb | lv_tree_traverse_cb_t | callback function to call on each node |
bcb | lv_tree_before_cb_t | callback function to call before visiting a node |
acb | lv_tree_after_cb_t | callback function to call after visiting a node |
user_data | void * | user data to pass to the callback functions |
Returns: bool — true: traversal is finished; false: traversal broken
Enums
_lv_tree_walk_mode_t
| Name | Value |
|---|---|
LV_TREE_WALK_PRE_ORDER | 0 |
LV_TREE_WALK_POST_ORDER |
Structs
struct
_lv_tree_class_t
Describe the common methods of every object. Similar to a C++ class.
| Member | Type | Description |
|---|---|---|
base_class | const lv_tree_class_t * | |
instance_size | uint32_t | |
constructor_cb | lv_tree_constructor_cb_t | |
destructor_cb | lv_tree_destructor_cb_t |
struct
_lv_tree_node_t
Description of a tree node
| Member | Type | Description |
|---|---|---|
parent | lv_tree_node_t * | |
children | lv_tree_node_t ** | |
child_cnt | uint32_t | |
child_cap | uint32_t | |
class_p | const lv_tree_class_t * |
Typedefs
misc/lv_tree.h:28typedef
lv_tree_class_t
typedef struct _lv_tree_class_t lv_tree_class_tUsed by 1 function
lv_tree_node_create— paramclass_p
misc/lv_tree.h:29typedef
lv_tree_node_t
typedef struct _lv_tree_node_t lv_tree_node_tUsed by 3 functions
lv_tree_node_create— paramparentlv_tree_node_delete— paramnodelv_tree_walk— paramnode
misc/lv_tree.h:31typedef
lv_tree_constructor_cb_t
typedef void(* lv_tree_constructor_cb_t) (const lv_tree_class_t *class_p, lv_tree_node_t *node)misc/lv_tree.h:32typedef
lv_tree_destructor_cb_t
typedef void(* lv_tree_destructor_cb_t) (const lv_tree_class_t *class_p, lv_tree_node_t *node)misc/lv_tree.h:58typedef
lv_tree_walk_mode_t
typedef uint8_t lv_tree_walk_mode_tUsed by 1 function
lv_tree_walk— parammode
misc/lv_tree.h:60typedef
lv_tree_traverse_cb_t
typedef bool(* lv_tree_traverse_cb_t) (const lv_tree_node_t *node, void *user_data)Used by 1 function
lv_tree_walk— paramcb
misc/lv_tree.h:61typedef
lv_tree_before_cb_t
typedef bool(* lv_tree_before_cb_t) (const lv_tree_node_t *node, void *user_data)Used by 1 function
lv_tree_walk— parambcb
misc/lv_tree.h:62typedef
lv_tree_after_cb_t
typedef void(* lv_tree_after_cb_t) (const lv_tree_node_t *node, void *user_data)Used by 1 function
lv_tree_walk— paramacb
Macros
misc/lv_tree.h:22macro
LV_TREE_NODE
#define LV_TREE_NODE(n) \
((lv_tree_node_t*)(n))Variables
misc/lv_tree.h:68variable
lv_tree_node_class
const lv_tree_class_t lv_tree_node_classDependencies
How is this guide?
Last updated on