page_pub.h
来自「abstract rtos」· C头文件 代码 · 共 63 行
H
63 行
#ifdef __cplusplusextern "C"{#endif #ifndef __INC_PAGE_PUB_H__#define __INC_PAGE_PUB_H__#define PAGE_DEFAULT_BLK_SIZE 4096 #define PAGE_DEFAULT_BLK_NUM 250 #define aos_page_opt_set( page, val ) do{ (page)->opt = (val); }while(0)#define aos_page_opt_get( page, pval ) do{ *(U32*)(pval) = (page)->opt; }while(0)#define aos_page_sum_set( page, val ) do{ (page)->sum = (val); }while(0)#define aos_page_sum_get( page, pval ) do{ *(U32*)(pval) = (page)->sum; }while(0)#define aos_page_len( page ) ( (page)->page_size )#define aos_page_read_reset( page ) do{ (page)->read_ptr = 0; }while(0)#define aos_page_write_reset( page ) do{ (page)->write_ptr = 0; }while(0)#define aos_page_size_reset(page) do{ (page)->page_size=0; }while(0)#define aos_page_read_end(page) ( (page)->read_ptr >= (page)->page_size )typedef struct{ U32 magic_num; struct msg_blk mb; U32 mpe; U32 opt; U32 sum; U32 page_size; U32 blk_size; U32 max_blk_num; U32 blk_num; U32 read_ptr; U32 write_ptr; U8 *ext_mem_ptr; U32 ext_mem_size; U8 *blk_ptr[1]; }page_t;page_t *aos_page_new( MPE mpe );VOID aos_page_delete( page_t *page );U32 aos_page_read( page_t *page, U8 *buf, U32 len );U32 aos_page_read_off( page_t *page, U32 off, U8 *buf, U32 len );U32 aos_page_write( page_t *page, U8 *buf, U32 len );U32 aos_page_write_off( page_t *page, U32 off, U8 *buf, U32 len );U32 aos_page_append( page_t *page, U8 *ptr, U32 size );#endif#ifdef __cplusplus}#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?