3#include "ISeekableInputStream.h"
4#include "AUI/Common/AByteBuffer.h"
5#include "AUI/Url/AUrl.h"
13 std::variant<AByteBuffer, _<AByteBuffer>> mRef;
19 explicit AStrongByteBufferInputStream(
AByteBuffer buffer)
noexcept: mRef(std::move(buffer)) {
23 explicit AStrongByteBufferInputStream(
_<AByteBuffer> buffer)
noexcept: mRef(std::move(buffer)) {
26 ~AStrongByteBufferInputStream()
override =
default;
30 void seek(std::streamoff offset, ASeekDir seekDir)
override;
32 [[nodiscard]] std::streampos
tell() noexcept override;
34 size_t read(
char* dst,
size_t size) override;
std::vector-like growing array for byte storage.
Definition AByteBuffer.h:31
Uniform Resource Locator implementation.
Definition AUrl.h:31
An std::weak_ptr with AUI extensions.
Definition SharedPtrTypes.h:179
Definition callables.h:36