ubinos
|
ubiclib simple circular buffer API More...
Go to the source code of this file.
Classes | |
struct | _cbuf_t |
Macros | |
#define | cbuf_def_init(_name, _size) |
Typedefs | |
typedef struct _cbuf_t | cbuf_t |
typedef cbuf_t * | cbuf_pt |
Functions | |
ubi_st_t | cbuf_create (cbuf_pt *cbuf_p, uint32_t size) |
ubi_st_t | cbuf_delete (cbuf_pt *cbuf_p) |
ubi_st_t | cbuf_write (cbuf_pt cbuf, const uint8_t *buf, uint32_t len, uint32_t *written_p) |
ubi_st_t | cbuf_read (cbuf_pt cbuf, uint8_t *buf, uint32_t len, uint32_t *read_p) |
ubi_st_t | cbuf_view (cbuf_pt cbuf, uint8_t *buf, uint32_t len, uint32_t *read_p) |
ubi_st_t | cbuf_clear (cbuf_pt cbuf) |
uint32_t | cbuf_get_len (cbuf_pt cbuf) |
uint32_t | cbuf_get_empty_len (cbuf_pt cbuf) |
uint8_t | cbuf_is_full (cbuf_pt cbuf) |
uint8_t * | cbuf_get_head_addr (cbuf_pt cbuf) |
uint8_t * | cbuf_get_tail_addr (cbuf_pt cbuf) |
uint32_t | cbuf_get_contig_len (cbuf_pt cbuf) |
uint32_t | cbuf_get_contig_empty_len (cbuf_pt cbuf) |
uint8_t | cbuf_align_head (cbuf_pt cbuf, uint8_t align) |
ubiclib simple circular buffer API
ubiclib 단순환형버퍼 API를 정의합니다.
#define cbuf_def_init | ( | _name, | |
_size | |||
) |
정적으로 단순환형버퍼를 선언하고 초기화하는 매크로
_name | 단순환형버퍼 이름 |
_size | 버퍼 크기 |
uint8_t cbuf_align_head | ( | cbuf_pt | cbuf, |
uint8_t | align | ||
) |
단순환형버퍼의 head 주소를 정렬하는 함수 (비어 있을 때만 정렬됨)
cbuf | 대상 단순환형버퍼 포인터 |
align | 정렬 단위 |
동적으로 단순환형버퍼를 생성하는 함수
cbuf_p | 생성한 단순환형버퍼의 주소를 저장할 포인터의 주소 |
size | 버퍼 크기 |
동적으로 단순환형버퍼를 제거하는 함수
cbuf_p | 제거할 단순환형버퍼의 주소가 저장된 포인터의 주소 제거에 성공하면 *cbuf_p는 NULL이 됨 |
uint32_t cbuf_get_contig_empty_len | ( | cbuf_pt | cbuf | ) |
단순환형버퍼에 빈 공간 중 연속된 영역의 길이를 돌려주는 함수
cbuf | 대상 단순환형버퍼 포인터 |
uint32_t cbuf_get_contig_len | ( | cbuf_pt | cbuf | ) |
단순환형버퍼에 들어있는 자료 중 연속된 영역의 길이를 돌려주는 함수
cbuf | 대상 단순환형버퍼 포인터 |
uint32_t cbuf_get_empty_len | ( | cbuf_pt | cbuf | ) |
단순환형버퍼에 빈 공간 길이를 돌려주는 함수
cbuf | 대상 단순환형버퍼 포인터 |
uint8_t* cbuf_get_head_addr | ( | cbuf_pt | cbuf | ) |
단순환형버퍼의 머리 부분 주소를 돌려주는 함수
cbuf | 대상 단순환형버퍼 포인터 |
uint32_t cbuf_get_len | ( | cbuf_pt | cbuf | ) |
단순환형버퍼에 들어있는 자료의 길이를 돌려주는 함수
cbuf | 대상 단순환형버퍼 포인터 |
uint8_t* cbuf_get_tail_addr | ( | cbuf_pt | cbuf | ) |
단순환형버퍼의 꼬리 부분 주소를 돌려주는 함수
cbuf | 대상 단순환형버퍼 포인터 |
uint8_t cbuf_is_full | ( | cbuf_pt | cbuf | ) |
단순환형버퍼가 가득 차있는지 여부를 돌려주는 함수
cbuf | 대상 단순환형버퍼 포인터 |
단순환형버퍼에서 자료를 읽는 함수 (읽어온 자료는 삭제됨)
cbuf | 대상 단순환형버퍼 포인터 |
buf | 읽은 자료를 저장할 버퍼 |
size | 읽을 자료 크기 |
read_p | 읽은 자료 크기를 저장할 변수의 주소 (NULL이면 무시) |
단순환형버퍼의 자료를 보는 함수 (본 자료는 삭제되지 않음)
cbuf | 대상 단순환형버퍼 포인터 |
buf | 읽은 자료를 저장할 버퍼 |
size | 읽을 자료 크기 |
read_p | 읽은 자료 크기를 저장할 변수의 주소 (NULL이면 무시) |