XFusion API
v1.3.0
载入中...
搜索中...
未找到
xf_osal_queue.h
浏览该文件的文档.
1
12
#if XF_OSAL_QUEUE_IS_ENABLE || defined(__DOXYGEN__)
13
14
#ifndef __XF_OSAL_QUEUE_H__
15
#define __XF_OSAL_QUEUE_H__
16
17
/* ==================== [Includes] ========================================== */
18
19
#include "
xf_osal_def.h
"
20
30
#ifdef __cplusplus
31
extern
"C"
{
32
#endif
33
34
/* ==================== [Defines] =========================================== */
35
36
/* ==================== [Typedefs] ========================================== */
37
41
typedef
void
*
xf_osal_queue_t
;
42
46
typedef
struct
_xf_osal_queue_attr_t
{
47
const
char
*
name
;
48
uint32_t
attr_bits
;
49
void
*
cb_mem
;
50
uint32_t
cb_size
;
51
void
*
mq_mem
;
52
uint32_t
mq_size
;
53
}
xf_osal_queue_attr_t
;
54
55
/* ==================== [Global Prototypes] ================================= */
56
69
xf_osal_queue_t
xf_osal_queue_create
(
70
uint32_t msg_count, uint32_t msg_size,
const
xf_osal_queue_attr_t
*attr);
71
91
xf_err_t
xf_osal_queue_put
(
92
xf_osal_queue_t
queue
,
const
void
*msg_ptr, uint8_t msg_prio, uint32_t timeout);
93
113
xf_err_t
xf_osal_queue_get
(
114
xf_osal_queue_t
queue
,
void
*msg_ptr, uint8_t *msg_prio, uint32_t timeout);
115
124
uint32_t
xf_osal_queue_get_count
(
xf_osal_queue_t
queue
);
125
134
xf_err_t
xf_osal_queue_reset
(
xf_osal_queue_t
queue
);
135
144
xf_err_t
xf_osal_queue_delete
(
xf_osal_queue_t
queue
);
145
146
/* ==================== [Macros] ============================================ */
147
148
#ifdef __cplusplus
149
}
/* extern "C" */
150
#endif
151
157
#endif
// __XF_OSAL_QUEUE_H__
158
159
#endif
// XF_OSAL_QUEUE_IS_ENABLE
xf_osal_queue_get
xf_err_t xf_osal_queue_get(xf_osal_queue_t queue, void *msg_ptr, uint8_t *msg_prio, uint32_t timeout)
从队列获取消息,如果队列为空,则超时。
xf_osal_queue_reset
xf_err_t xf_osal_queue_reset(xf_osal_queue_t queue)
将消息队列重置为初始空状态。
xf_osal_queue_t
void * xf_osal_queue_t
消息队列句柄。
Definition
xf_osal_queue.h:41
xf_osal_queue_delete
xf_err_t xf_osal_queue_delete(xf_osal_queue_t queue)
删除消息队列对象。
xf_osal_queue_create
xf_osal_queue_t xf_osal_queue_create(uint32_t msg_count, uint32_t msg_size, const xf_osal_queue_attr_t *attr)
创建并初始化消息队列对象。
xf_osal_queue_attr_t
struct _xf_osal_queue_attr_t xf_osal_queue_attr_t
消息队列的属性结构。
xf_osal_queue_put
xf_err_t xf_osal_queue_put(xf_osal_queue_t queue, const void *msg_ptr, uint8_t msg_prio, uint32_t timeout)
将消息放入队列,如果队列已满,则超时。
xf_osal_queue_get_count
uint32_t xf_osal_queue_get_count(xf_osal_queue_t queue)
获取消息队列中排队的消息数。
xf_err_t
int32_t xf_err_t
整形错误类型。 错误码具体值见 xf_err_code_t.
Definition
xf_err.h:69
queue
static xf_osal_queue_t queue
Definition
xf_main.c:35
_xf_osal_queue_attr_t
消息队列的属性结构。
Definition
xf_osal_queue.h:46
_xf_osal_queue_attr_t::mq_size
uint32_t mq_size
Definition
xf_osal_queue.h:52
_xf_osal_queue_attr_t::cb_size
uint32_t cb_size
Definition
xf_osal_queue.h:50
_xf_osal_queue_attr_t::attr_bits
uint32_t attr_bits
Definition
xf_osal_queue.h:48
_xf_osal_queue_attr_t::cb_mem
void * cb_mem
Definition
xf_osal_queue.h:49
_xf_osal_queue_attr_t::name
const char * name
Definition
xf_osal_queue.h:47
_xf_osal_queue_attr_t::mq_mem
void * mq_mem
Definition
xf_osal_queue.h:51
xf_osal_def.h
xf_osal 内部公共定义、函数、数据。
components
xf_osal
xf_osal
xf_osal
xf_osal_queue.h
生成于 2025年 一月 21日 星期二 17:25:09 , 为 XFusion API使用
1.9.8