13#ifndef __xwos_osal_sync_sel_h__
14#define __xwos_osal_sync_sel_h__
97#define XWOS_SEL_NILD ((xwos_sel_d){NULL, 0,})
115 return xwosdl_sel_init(&sel->
ossel, num, bmp, msk);
130 return xwosdl_sel_fini(&sel->
ossel);
149 return xwosdl_sel_grab(&sel->
ossel);
168 return xwosdl_sel_put(&sel->
ossel);
185 return xwosdl_sel_create((xwosdl_sel_d *)seld, num);
200 return xwosdl_sel_delete(&seld.
sel->
ossel, seld.
tik);
217 return xwosdl_sel_acquire(&seld.
sel->
ossel, seld.
tik);
234 return xwosdl_sel_release(&seld.
sel->
ossel, seld.
tik);
247 return xwosdl_sel_get_tik(&sel->
ossel);
263 seld.
tik = xwosdl_sel_get_tik(&sel->
ossel);
288 return xwosdl_sel_bind(&src->
ossel, &dst->
ossel, pos);
305 return xwosdl_sel_unbind(&src->
ossel, &dst->
ossel);
321 return xwosdl_sel_get_num(&sel->
ossel, numbuf);
340 return xwosdl_sel_select(&sel->
ossel, msk, trg);
368 return xwosdl_sel_select_to(&sel->
ossel, msk, trg, to);
388 return xwosdl_sel_select(&sel->
ossel, msk, trg);
407 return xwosdl_sel_select_unintr(&sel->
ossel, msk, trg);
#define __xwos_inline_api
xws64_t xwtm_t
XWOS系统时间 (有符号)
static xwer_t xwos_sel_select_to(struct xwos_sel *sel, xwbmp_t msk[], xwbmp_t trg[], xwtm_t to)
XWOS API:限时等待信号选择器中的 选择信号
static xwer_t xwos_sel_fini(struct xwos_sel *sel)
XWOS API:销毁静态方式初始化的信号选择器
static xwer_t xwos_sel_get_num(struct xwos_sel *sel, xwsz_t *numbuf)
XWOS API:获取信号选择器中的信号槽的数量
static xwer_t xwos_sel_grab(struct xwos_sel *sel)
XWOS API:增加信号选择器对象的引用计数
static xwer_t xwos_sel_create(xwos_sel_d *seld, xwsz_t num)
XWOS API:动态方式创建信号选择器
static xwer_t xwos_sel_bind(struct xwos_sel *src, struct xwos_sel *dst, xwsq_t pos)
XWOS API:绑定源信号选择器到目的信号选择器
static xwer_t xwos_sel_unbind(struct xwos_sel *src, struct xwos_sel *dst)
XWOS API:从目的信号选择器上解绑源信号选择器
static xwsq_t xwos_sel_get_tik(struct xwos_sel *sel)
XWOS API:获取信号选择器对象的标签
static xwer_t xwos_sel_delete(xwos_sel_d seld)
XWOS API:删除动态方式创建的信号选择器
static xwer_t xwos_sel_acquire(xwos_sel_d seld)
XWOS API:检查信号选择器对象的标签并增加引用计数
static xwer_t xwos_sel_release(xwos_sel_d seld)
XWOS API:检查对象的标签并减少引用计数
static xwer_t xwos_sel_tryselect(struct xwos_sel *sel, xwbmp_t msk[], xwbmp_t trg[])
XWOS API:检测信号选择器中是否有 选择信号
static xwer_t xwos_sel_select_unintr(struct xwos_sel *sel, xwbmp_t msk[], xwbmp_t trg[])
XWOS API:等待信号选择器中的 选择信号 ,且等待不可被中断
static xwer_t xwos_sel_init(struct xwos_sel *sel, xwsz_t num, xwbmp_t *bmp, xwbmp_t *msk)
XWOS API:静态方式初始化信号选择器
static xwer_t xwos_sel_select(struct xwos_sel *sel, xwbmp_t msk[], xwbmp_t trg[])
XWOS API:等待信号选择器中的 选择信号
static xwos_sel_d xwos_sel_get_d(struct xwos_sel *sel)
XWOS API:获取信号选择器对象描述符
static xwer_t xwos_sel_put(struct xwos_sel *sel)
XWOS API:减少信号选择器对象的引用计数