mirror of
https://github.com/elasota/Aerofoil.git
synced 2025-09-23 14:53:52 +00:00
28 lines
543 B
C++
28 lines
543 B
C++
#pragma once
|
|
|
|
#include <stdint.h>
|
|
|
|
class GpIOStream;
|
|
|
|
namespace PortabilityLayer
|
|
{
|
|
class DeflateContext
|
|
{
|
|
public:
|
|
static DeflateContext *Create(GpIOStream *stream, int compressionLevel);
|
|
|
|
virtual void Destroy() = 0;
|
|
virtual bool Append(const void *buffer, size_t size) = 0;
|
|
|
|
virtual bool Flush() = 0;
|
|
|
|
static uint32_t CRC32(uint32_t inputValue, const void *buffer, size_t bufferLength);
|
|
};
|
|
|
|
class DeflateCodec
|
|
{
|
|
public:
|
|
static bool DecompressStream(GpIOStream *stream, size_t inSize, void *outBuffer, size_t outSize);
|
|
};
|
|
}
|