4jcraft/Minecraft.World/IO/Streams/ByteArrayOutputStream.h
2026-03-13 17:06:56 -05:00

28 lines
781 B
C++

#pragma once
#include "OutputStream.h"
class ByteArrayOutputStream : public OutputStream {
// Note - when actually implementing, byteArray will need to grow as data is
// written
public:
byteArray buf; // The buffer where data is stored.
protected:
unsigned int count; // The number of valid bytes in the buffer.
public:
ByteArrayOutputStream();
ByteArrayOutputStream(unsigned int size);
virtual ~ByteArrayOutputStream();
virtual void flush() {}
virtual void write(unsigned int b);
virtual void write(byteArray b);
virtual void write(byteArray b, unsigned int offset, unsigned int length);
virtual void close();
virtual byteArray toByteArray();
void reset() { count = 0; }
unsigned int size() { return count; }
};