xt-sdk 文档 v1.0.3
xt-sdk 嵌入式 SDK API 参考
载入中...
搜索中...
未找到
xt_rb.h 文件参考

XTINY 环形缓冲区(Ring Buffer)接口 更多...

#include <stdint.h>
#include <stdbool.h>
#include <string.h>

浏览该文件的源代码.

结构体

struct  xt_rb
 环形缓冲区结构体 更多...

宏定义

#define XT_RB_FORCE   1
#define XT_RB_NO_FORCE   0
#define XT_RB_IS_VALID(rb)
#define XT_RB_IS_EMPTY(rb)
#define XT_RB_IS_FULL(rb)

函数

void xt_rb_init (struct xt_rb *rb, uint8_t *buf, uint32_t size)
 初始化环形缓冲区
void xt_rb_reset (struct xt_rb *rb)
 重置环形缓冲区(清空数据)
bool xt_rb_is_empty (const struct xt_rb *rb)
 判断缓冲区是否为空
bool xt_rb_is_full (const struct xt_rb *rb)
 判断缓冲区是否已满
uint32_t xt_rb_get_continuous_read_space (const struct xt_rb *rb)
 获取连续可读空间大小
uint32_t xt_rb_get_continuous_write_space (const struct xt_rb *rb, uint8_t b_force)
 获取连续可写空间大小
uint32_t xt_rb_get_size (const struct xt_rb *rb)
 获取缓冲区总大小
uint32_t xt_rb_get_filled (const struct xt_rb *rb)
 获取缓冲区已填充字节数
uint32_t xt_rb_get_empty (const struct xt_rb *rb)
 获取缓冲区空闲字节数
void xt_rb_putc (struct xt_rb *rb, uint8_t ch)
 写入单个字节
bool xt_rb_getc (struct xt_rb *rb, uint8_t *ch)
 读取单个字节
uint32_t xt_rb_write (struct xt_rb *rb, const uint8_t *src, uint32_t size, uint8_t b_force)
 写入数据到缓冲区
uint32_t xt_rb_read (struct xt_rb *rb, uint8_t *dst, uint32_t size)
 从缓冲区读取数据

详细描述

XTINY 环形缓冲区(Ring Buffer)接口

作者
your name (you@d.nosp@m.omai.nosp@m.n.com)
版本
0.1
日期
2025-07-02

SPDX-FileCopyrightText: 2025 深圳市天工聚创科技有限公司 SPDX-License-Identifier: Apache-2.0

在文件 xt_rb.h 中定义.