lib_buffer.h 743 B

123456789101112131415161718192021222324
  1. #ifndef __BUFFER
  2. #define __BUFFER
  3. typedef struct
  4. {
  5. unsigned char *pHead;//环形存储区的首地址
  6. unsigned char *pTail;//环形存储区的结尾地址
  7. unsigned char *pValid;//已使用的缓冲区的首地址
  8. unsigned char *pValidTail;//已使用的缓冲区的尾地址
  9. unsigned int pop_size;
  10. unsigned int push_size;
  11. unsigned int size;
  12. } TBuffferOBJ;
  13. typedef TBuffferOBJ* TBufffer;
  14. TBufffer TBuffer_Init(TBuffferOBJ *data, void *buffer, int buff_size);
  15. void TBuffer_Fini(TBuffferOBJ *data);
  16. int TBuffer_Push(TBufffer Object, const void *data, int size);
  17. int TBuffer_Peek(TBufffer Object, void *data, int size); //返回实际尺寸
  18. int TBuffer_Pop(TBufffer Object, void *data, int size);
  19. #endif