summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorShell <[email protected]>2024-05-17 13:19:00 +0800
committerGitHub <[email protected]>2024-05-17 13:19:00 +0800
commitf2d6325b43ea1e390f034e03340b41662351b441 (patch)
tree8933d6e52221a7f642148addac77750ef7dbc3a3 /include
parent3d30b56c8631ed3b5fa5fbda71d1ef21853afc9d (diff)
[smart] select console device dynamically (#8949)
* [smart] select console device dynamically - Fixed compiler warning on terminal subsystem for `components/lwp/terminal/terminal.h` - Updated default console setup to dynamically select an appropriate tty device based on the configured console device name. Signed-off-by: Shell <[email protected]> * fixup: remove useless codes --------- Signed-off-by: Shell <[email protected]>
Diffstat (limited to 'include')
-rw-r--r--include/rtdef.h9
-rw-r--r--include/rtthread.h1
2 files changed, 10 insertions, 0 deletions
diff --git a/include/rtdef.h b/include/rtdef.h
index 06fcfcb8b8..f0918d5dd6 100644
--- a/include/rtdef.h
+++ b/include/rtdef.h
@@ -356,6 +356,15 @@ struct rt_object
typedef struct rt_object *rt_object_t; /**< Type for kernel objects. */
/**
+ * iterator of rt_object_for_each()
+ *
+ * data is the data passing in to rt_object_for_each(). iterator can return
+ * RT_EOK to continue the iteration; or any positive value to break the loop
+ * successfully; or any negative errno to break the loop on failure.
+ */
+typedef rt_err_t (*rt_object_iter_t)(rt_object_t object, void *data);
+
+/**
* The object type can be one of the follows with specific
* macros enabled:
* - Thread
diff --git a/include/rtthread.h b/include/rtthread.h
index c2174cce42..1cad47931a 100644
--- a/include/rtthread.h
+++ b/include/rtthread.h
@@ -75,6 +75,7 @@ rt_err_t rt_custom_object_destroy(rt_object_t obj);
#endif /* RT_USING_HEAP */
rt_bool_t rt_object_is_systemobject(rt_object_t object);
rt_uint8_t rt_object_get_type(rt_object_t object);
+rt_err_t rt_object_for_each(rt_uint8_t type, rt_object_iter_t iter, void *data);
rt_object_t rt_object_find(const char *name, rt_uint8_t type);
rt_err_t rt_object_get_name(rt_object_t object, char *name, rt_uint8_t name_size);