36 lines
1020 B
C++
36 lines
1020 B
C++
#pragma once
|
|
#include "Stream.h"
|
|
#include "Buffer.h"
|
|
|
|
#define WIFICLIENT_BUFFER 512
|
|
|
|
class WiFiClient : public Stream
|
|
{
|
|
public:
|
|
WiFiClient(const char * content): buffer(_buff, WIFICLIENT_BUFFER), _status(1) {
|
|
buffer.write(content);
|
|
}
|
|
WiFiClient(): buffer(_buff, WIFICLIENT_BUFFER), _status(0) {}
|
|
|
|
uint8_t _status;
|
|
|
|
void stop() { _status=0; }
|
|
const uint8_t connected() const { return _status; }
|
|
|
|
operator bool() const { return connected(); }
|
|
|
|
int available() { return buffer.available(); }
|
|
int read() { return buffer.read(); }
|
|
int peek() { return buffer.peek(); }
|
|
|
|
size_t write(uint8_t data) { return buffer.write(data); }
|
|
size_t write(const uint8_t* buf, size_t len) { return buffer.write(buf, len); }
|
|
|
|
int availableForWrite() { return buffer.availableForWrite(); }
|
|
using Stream::write;
|
|
protected:
|
|
Buffer buffer;
|
|
private:
|
|
uint8_t _buff[WIFICLIENT_BUFFER];
|
|
};
|