From e011dab7b413949c942ad31c3d9c6003f76133c0 Mon Sep 17 00:00:00 2001 From: amcewen Date: Mon, 28 Mar 2011 12:08:53 +0100 Subject: Pulled out Client API into a base class to allow multiple derived classes to use it, and moved it (plus IPAddress) out of the Ethernet library so that other libraries can find it. First steps in integrating the WiFly code so it's easier to switch between that and Ethernet --- cores/arduino/NetClient.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 cores/arduino/NetClient.h (limited to 'cores/arduino/NetClient.h') diff --git a/cores/arduino/NetClient.h b/cores/arduino/NetClient.h new file mode 100644 index 0000000..d8df914 --- /dev/null +++ b/cores/arduino/NetClient.h @@ -0,0 +1,28 @@ +#ifndef netclient_h +#define netclient_h +#include "WProgram.h" +#include "Print.h" +#include "NetClient.h" +#include "IPAddress.h" + +class NetClient : public Stream { + +public: + virtual int connect(IPAddress ip, uint16_t port) =0; + virtual int connect(const char *host, uint16_t port) =0; + virtual void write(uint8_t) =0; + virtual void write(const char *str) =0; + virtual void write(const uint8_t *buf, size_t size) =0; + virtual int available() = 0; + virtual int read() = 0; + virtual int read(uint8_t *buf, size_t size) = 0; + virtual int peek() = 0; + virtual void flush() = 0; + virtual void stop() = 0; + virtual uint8_t connected() = 0; + virtual uint8_t operator==(int) = 0; + virtual uint8_t operator!=(int) = 0; + virtual operator bool() = 0; +}; + +#endif -- cgit v1.2.3-18-g5258