Rev | Line | |
---|
[209] | 1 | #ifndef shimclient_h
|
---|
| 2 | #define shimclient_h
|
---|
| 3 |
|
---|
| 4 | #include "Arduino.h"
|
---|
| 5 | #include "Client.h"
|
---|
| 6 | #include "IPAddress.h"
|
---|
| 7 | #include "Buffer.h"
|
---|
| 8 |
|
---|
| 9 |
|
---|
| 10 | class ShimClient : public Client {
|
---|
| 11 | private:
|
---|
| 12 | Buffer* responseBuffer;
|
---|
| 13 | Buffer* expectBuffer;
|
---|
| 14 | bool _allowConnect;
|
---|
| 15 | bool _connected;
|
---|
| 16 | bool expectAnything;
|
---|
| 17 | bool _error;
|
---|
| 18 | uint16_t _received;
|
---|
| 19 | IPAddress _expectedIP;
|
---|
| 20 | uint16_t _expectedPort;
|
---|
| 21 | const char* _expectedHost;
|
---|
| 22 |
|
---|
| 23 | public:
|
---|
| 24 | ShimClient();
|
---|
| 25 | virtual int connect(IPAddress ip, uint16_t port);
|
---|
| 26 | virtual int connect(const char *host, uint16_t port);
|
---|
| 27 | virtual size_t write(uint8_t);
|
---|
| 28 | virtual size_t write(const uint8_t *buf, size_t size);
|
---|
| 29 | virtual int available();
|
---|
| 30 | virtual int read();
|
---|
| 31 | virtual int read(uint8_t *buf, size_t size);
|
---|
| 32 | virtual int peek();
|
---|
| 33 | virtual void flush();
|
---|
| 34 | virtual void stop();
|
---|
| 35 | virtual uint8_t connected();
|
---|
| 36 | virtual operator bool();
|
---|
| 37 |
|
---|
| 38 | virtual ShimClient* respond(uint8_t *buf, size_t size);
|
---|
| 39 | virtual ShimClient* expect(uint8_t *buf, size_t size);
|
---|
| 40 |
|
---|
| 41 | virtual void expectConnect(IPAddress ip, uint16_t port);
|
---|
| 42 | virtual void expectConnect(const char *host, uint16_t port);
|
---|
| 43 |
|
---|
| 44 | virtual uint16_t received();
|
---|
| 45 | virtual bool error();
|
---|
| 46 |
|
---|
| 47 | virtual void setAllowConnect(bool b);
|
---|
| 48 | virtual void setConnected(bool b);
|
---|
| 49 | };
|
---|
| 50 |
|
---|
| 51 | #endif
|
---|
Note:
See
TracBrowser
for help on using the repository browser.