/*** Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved. File: AuIngestableReadBase.hpp Date: 2022-2-14 Author: Reece ***/ #pragma once namespace Aurora::Compression { struct IngestableReadBase { protected: template inline void SetArray(T(&array)[Z]); template inline void SetOutArray(T(&array)[Z]); inline void SetPointer(void *pointer, AuUInt32 dwLength); template inline AuUInt32 IngestForInPointer(const AuSPtr &reader, T *&in, Z &inAlreadyAvailable, AuUInt32 dwAmount); protected: AuUInt8 *internalInBuffer_ {}; AuUInt32 internalInLength_ {}; AuUInt8 *internalOutBuffer_ {}; AuUInt32 internalOutLength_ {}; }; } #include "AuIngestableReadBase.inl"