Add IW3 zone writing

This commit is contained in:
Jan
2021-04-17 11:19:55 +02:00
parent e6a10fb992
commit 687d1185a3
10 changed files with 342 additions and 13 deletions

View File

@ -0,0 +1,26 @@
#pragma once
#include <cstdint>
#include <cstddef>
#include "Writing/OutputStreamProcessor.h"
class OutputProcessorDeflate final : public OutputStreamProcessor
{
class Impl;
Impl* m_impl;
static constexpr size_t DEFAULT_BUFFER_SIZE = 0x40000;
public:
OutputProcessorDeflate();
OutputProcessorDeflate(size_t bufferSize);
~OutputProcessorDeflate() override;
OutputProcessorDeflate(const OutputProcessorDeflate& other) = delete;
OutputProcessorDeflate(OutputProcessorDeflate&& other) noexcept = default;
OutputProcessorDeflate& operator=(const OutputProcessorDeflate& other) = delete;
OutputProcessorDeflate& operator=(OutputProcessorDeflate&& other) noexcept = default;
void Write(const void* buffer, size_t length) override;
void Flush() override;
int64_t Pos() override;
};