Zephyr Project API 4.0.0
A Scalable Open Source RTOS
|
Type used to represent a channel mutable data. More...
#include <zbus.h>
Data Fields | |
int16_t | observers_start_idx |
Static channel observer list start index. | |
int16_t | observers_end_idx |
Static channel observer list end index. | |
struct k_sem | sem |
Access control semaphore. | |
sys_slist_t | observers |
Channel observer list. | |
struct net_buf_pool * | msg_subscriber_pool |
Net buf pool for message subscribers. | |
k_ticks_t | publish_timestamp |
Kernel timestamp of the last publish action on this channel. | |
uint32_t | publish_count |
Number of times data has been published to this channel. | |
Type used to represent a channel mutable data.
Every channel has a zbus_channel_data structure associated.
struct net_buf_pool* zbus_channel_data::msg_subscriber_pool |
Net buf pool for message subscribers.
It can be either the global or a separated one.
sys_slist_t zbus_channel_data::observers |
Channel observer list.
Represents the channel's observers list, it can be empty or have listeners and subscribers mixed in any sequence. It can be changed in runtime.
int16_t zbus_channel_data::observers_end_idx |
Static channel observer list end index.
Considering the ITERABLE SECTIONS allocation order.
int16_t zbus_channel_data::observers_start_idx |
Static channel observer list start index.
Considering the ITERABLE SECTIONS allocation order.
uint32_t zbus_channel_data::publish_count |
Number of times data has been published to this channel.
k_ticks_t zbus_channel_data::publish_timestamp |
Kernel timestamp of the last publish action on this channel.
struct k_sem zbus_channel_data::sem |
Access control semaphore.
Points to the semaphore used to avoid race conditions for accessing the channel.