forked from github/esp8266-geigercounter
35 lines
593 B
C++
35 lines
593 B
C++
#include "Buffer.h"
|
|
#include "Arduino.h"
|
|
|
|
Buffer::Buffer() {
|
|
this->pos = 0;
|
|
this->length = 0;
|
|
}
|
|
|
|
Buffer::Buffer(uint8_t* buf, size_t size) {
|
|
this->pos = 0;
|
|
this->length = 0;
|
|
this->add(buf,size);
|
|
}
|
|
bool Buffer::available() {
|
|
return this->pos < this->length;
|
|
}
|
|
|
|
uint8_t Buffer::next() {
|
|
if (this->available()) {
|
|
return this->buffer[this->pos++];
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
void Buffer::reset() {
|
|
this->pos = 0;
|
|
}
|
|
|
|
void Buffer::add(uint8_t* buf, size_t size) {
|
|
uint16_t i = 0;
|
|
for (;i<size;i++) {
|
|
this->buffer[this->length++] = buf[i];
|
|
}
|
|
}
|