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 + -
显示快捷键?