#include "oneshotreadwriter.h" OneShotReadWriter::OneShotReadWriter(uint32_t owner, uint8_t* toRead) : ReadWriter(owner) { this->length = strlen(toRead); this->buffer = new uint8_t[this->length]; memcpy(this->buffer, toRead, this->length); } uint32_t OneShotReadWriter::read(uint32_t count, uint8_t* buffer) { uint32_t c=0; while (index < length && c < count) { buffer[c++] = this->buffer[index++]; } return c; } uint32_t OneShotReadWriter::size() { return length; } uint32_t OneShotReadWriter::seek(uint32_t position) { index = clamp(0, length, position); return index; }