From cbff794b55c94c3c38f4017d21d78b9fa1743f2c Mon Sep 17 00:00:00 2001
From: guowenxue <guowenxue@gmail.com>
Date: Wed, 21 Aug 2024 09:58:30 +0800
Subject: [PATCH] Add list test example code
---
booster/ringbuf.h | 49 +++++++++++++++++++++++--------------------------
1 files changed, 23 insertions(+), 26 deletions(-)
diff --git a/booster/ringbuf.h b/booster/ringbuf.h
index 23553cc..e33ba6d 100644
--- a/booster/ringbuf.h
+++ b/booster/ringbuf.h
@@ -1,13 +1,13 @@
-/********************************************************************************
- * Copyright: (C) 2021 LingYun IoT System Studio
+/*********************************************************************************
+ * Copyright: (C) 2023 LingYun IoT System Studio.
* All rights reserved.
*
* Filename: ringbuf.h
- * Description: This head file
+ * Description: This file is common ring buffer API functions
*
- * Version: 1.0.0(2021年04月29日)
+ * Version: 1.0.0(11/08/23)
* Author: Guo Wenxue <guowenxue@gmail.com>
- * ChangeLog: 1, Release initial version on "2021年04月29日 12时18分32秒"
+ * ChangeLog: 1, Release initial version on "11/08/23 16:18:43"
*
********************************************************************************/
@@ -16,7 +16,7 @@
struct ring_buffer
{
- unsigned char *buffer;
+ unsigned char *buffer;
int wr_pointer;
int rd_pointer;
int size;
@@ -24,34 +24,31 @@
/* Initial the ring buffer */
-void rb_init (struct ring_buffer *ring, unsigned char *buff, int size) ;
+void rb_init(struct ring_buffer *rb, unsigned char *buf, int size);
+/* Clear the ring buffer data */
+void rb_clear(struct ring_buffer *rb);
+
+/* Get data size in the ring buffer */
+int rb_data_size(struct ring_buffer *rb);
+
+/* Get ring buffer left free size */
+int rb_free_size(struct ring_buffer *rb);
+
+/* Read a specify $index byte data in ring buffer $rb */
+unsigned char rb_peek(struct ring_buffer *rb, int index);
/* Description: Write $len bytes data in $buf into ring buffer $rb
* Return Value: The actual written into ring buffer data size, if ring buffer
* left space size small than $len, then only part of the data be written into.
*/
-int rb_write (struct ring_buffer *rb, unsigned char *buf, int len) ;
+int rb_write(struct ring_buffer *rb, unsigned char *buf, int len);
+/* Read $bytes data from ring buffer $rb to $buf */
+int rb_read(struct ring_buffer *rb, unsigned char *buf, int bytes);
-/* Get ring buffer left free size */
-int rb_free_size (struct ring_buffer *rb);
-
-
-/* Read $max bytes data from ring buffer $rb to $buf */
-int rb_read (struct ring_buffer *rb, unsigned char *buf, int max);
-
-
-/* Read a specify $index byte data in ring buffer $rb */
-unsigned char rb_peek(struct ring_buffer *rb, int index);
-
-
-/* Get data size in the ring buffer */
-int rb_data_size (struct ring_buffer *rb);
-
-
-/* Clear the ring buffer data */
-void rb_clear (struct ring_buffer *rb) ;
+/* Read $bytes data from ring buffer $rb to $buf, but not drain */
+int rb_copy(struct ring_buffer *rb, unsigned char *buf, int bytes);
#endif /* ----- #ifndef _RINGBUF_H_ ----- */
--
Gitblit v1.9.1