Home | History | Annotate | Download | only in lzma_sdk
      1 /* 7zBuf.h -- Byte Buffer
      2 2009-02-07 : Igor Pavlov : Public domain */
      3 
      4 #ifndef __7Z_BUF_H
      5 #define __7Z_BUF_H
      6 
      7 #include "Types.h"
      8 
      9 #ifdef __cplusplus
     10 extern "C" {
     11 #endif
     12 
     13 typedef struct
     14 {
     15   Byte *data;
     16   size_t size;
     17 } CBuf;
     18 
     19 void Buf_Init(CBuf *p);
     20 int Buf_Create(CBuf *p, size_t size, ISzAlloc *alloc);
     21 void Buf_Free(CBuf *p, ISzAlloc *alloc);
     22 
     23 typedef struct
     24 {
     25   Byte *data;
     26   size_t size;
     27   size_t pos;
     28 } CDynBuf;
     29 
     30 void DynBuf_Construct(CDynBuf *p);
     31 void DynBuf_SeekToBeg(CDynBuf *p);
     32 int DynBuf_Write(CDynBuf *p, const Byte *buf, size_t size, ISzAlloc *alloc);
     33 void DynBuf_Free(CDynBuf *p, ISzAlloc *alloc);
     34 
     35 #ifdef __cplusplus
     36 }
     37 #endif
     38 
     39 #endif
     40