|
| BaseBufferedRemoteTransport (BufferingMode bufferMode, uint8_t readBufferSize, uint8_t writeBufferSize, EncryptionHandler *encHandler=nullptr) |
|
void | endMsg () override |
|
int | writeChar (char data) override |
|
int | writeStr (const char *data) override |
|
uint8_t | readByte () override |
|
bool | readAvailable () override |
|
void | close () override |
|
void | flushIfRequired () |
|
void | flushInternal () |
|
virtual int | fillReadBuffer (uint8_t *dataBuffer, int maxSize)=0 |
|
| TagValueTransport (TagValueTransportType type) |
|
virtual void | startMsg (uint16_t msgType) |
|
void | startBinMsg (uint16_t msgType, uint16_t byteLen) |
|
void | writeField (uint16_t field, const char *value) |
|
void | writeFieldInt (uint16_t field, int value) |
|
void | writeFieldLong (uint16_t field, long value) |
|
FieldAndValue * | fieldIfAvailable () |
|
void | clearFieldStatus (FieldValueType ty=FVAL_PROCESSING) |
|
TagValueTransportType | getTransportType () |
|
virtual void | flush ()=0 |
|
virtual bool | available ()=0 |
|
virtual bool | connected ()=0 |
|
Many transports need buffering of messages, for example the regular Ethernet2 library will send a character at a time with no buffering. The BLE driver requires buffering because it is only legal to send single full messages at a time. Some other drivers can benefit from some level of buffering. To avoid writing this code many times in different contexts it is available in this core package.