Mesen-SX/SevenZip/7zMemBuffer.h

30 lines
583 B
C
Raw Normal View History

2019-02-13 14:10:36 -05:00
#pragma once
#include "7zTypes.h"
EXTERN_C_BEGIN
/* ---------- File ---------- */
typedef struct
{
void* buffer;
Int64 size;
Int64 pos;
} CSzMemBuffer;
/* reads max(*size, remain file's size) bytes */
2020-12-19 23:32:06 +03:00
WRes MemBuffer_Read(CSzMemBuffer* p, void* data, size_t* size);
WRes MemBuffer_Seek(CSzMemBuffer* p, Int64* pos, ESzSeek origin);
2019-02-13 14:10:36 -05:00
/* ---------- FileInStream ---------- */
typedef struct
{
2020-12-19 23:32:06 +03:00
ISeekInStream s;
CSzMemBuffer buffer;
2019-02-13 14:10:36 -05:00
} CMemBufferInStream;
2020-12-19 23:32:06 +03:00
void MemBufferInit(CMemBufferInStream* memBuferStream, CLookToRead* lookStream, void* buffer, size_t size);
2019-02-13 14:10:36 -05:00
EXTERN_C_END