mirror of
https://github.com/4jcraft/4jcraft.git
synced 2026-04-24 10:23:35 +00:00
35 lines
1.2 KiB
C++
35 lines
1.2 KiB
C++
#pragma once
|
|
// 4J Stu - Represents Java standard library class
|
|
|
|
#include "InputStream.h"
|
|
|
|
class ByteArrayInputStream : public InputStream {
|
|
protected:
|
|
byteArray buf; // An array of bytes that was provided by the creator of the
|
|
// stream.
|
|
unsigned int count; // The index one greater than the last valid character
|
|
// in the input stream buffer.
|
|
unsigned int mark; // The currently marked position in the stream.
|
|
unsigned int pos; // The index of the next character to read from the input
|
|
// stream buffer.
|
|
|
|
public:
|
|
ByteArrayInputStream(byteArray buf, unsigned int offset,
|
|
unsigned int length);
|
|
ByteArrayInputStream(byteArray buf);
|
|
virtual ~ByteArrayInputStream();
|
|
virtual int read();
|
|
virtual int read(byteArray b);
|
|
virtual int read(byteArray b, unsigned int offset, unsigned int length);
|
|
virtual void close();
|
|
virtual int64_t skip(int64_t n);
|
|
|
|
// 4J Stu Added - Sometimes we don't want to delete the data on destroying
|
|
// this
|
|
void reset() {
|
|
buf = byteArray();
|
|
count = 0;
|
|
mark = 0;
|
|
pos = 0;
|
|
}
|
|
}; |