2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2026-01-24 17:03:05 +00:00

refactor: hide implementation details of zone loading processors

This commit is contained in:
Jan
2025-05-02 19:34:51 +01:00
parent eb16dfcd00
commit 955df98279
17 changed files with 608 additions and 646 deletions

View File

@@ -1,20 +1,15 @@
#pragma once
#include "Loading/StreamProcessor.h"
#include "Utils/ICapturedDataProvider.h"
#include <memory>
class ProcessorCaptureData final : public StreamProcessor, public ICapturedDataProvider
namespace processor
{
std::unique_ptr<uint8_t[]> m_data;
const size_t m_capture_size;
size_t m_captured_data_size;
class IProcessorCaptureData : public StreamProcessor, public ICapturedDataProvider
{
};
public:
explicit ProcessorCaptureData(size_t captureSize);
~ProcessorCaptureData() override;
size_t Load(void* buffer, size_t length) override;
int64_t Pos() override;
void GetCapturedData(const uint8_t** pCapturedData, size_t* pSize) override;
};
std::unique_ptr<IProcessorCaptureData> CreateProcessorCaptureData(size_t captureSize);
} // namespace processor