1 #ifndef BufferedInput_h
2 #define BufferedInput_h
40 #include <Printable.h>
47 #define createBufferedInput(name, size) uint8_t name ## _INPUT_BUFFER[(size)]; BufferedInput name(sizeof(name ## _INPUT_BUFFER),name ## _INPUT_BUFFER);
83 virtual size_t write(
const uint8_t *buf,
size_t size);
104 uint8_t defaultBuffer[8];
111 void rb_init(uint8_t* _buf,
size_t _size);
113 inline int rb_available() {
114 return rb_buffer_count;
118 size_t rb_write(uint8_t b);
119 size_t rb_write(
const uint8_t *buffer,
size_t size);
120 int rb_availableForWrite();
123 void rb_dump(Stream* streamPtr);
126 uint16_t rb_buffer_head;
127 uint16_t rb_buffer_tail;
128 uint16_t rb_buffer_count;
129 uint16_t rb_wrapBufferIdx(uint16_t idx);
130 void rb_internalWrite(uint8_t b);