diff options
Diffstat (limited to 'libraries/Ethernet/Ethernet.h')
-rw-r--r-- | libraries/Ethernet/Ethernet.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/libraries/Ethernet/Ethernet.h b/libraries/Ethernet/Ethernet.h new file mode 100644 index 0000000..fdf0b7f --- /dev/null +++ b/libraries/Ethernet/Ethernet.h @@ -0,0 +1,37 @@ +#ifndef ethernet_h +#define ethernet_h + +#include <inttypes.h> +//#include "w5100.h" +#include "IPAddress.h" +#include "Client.h" +#include "Server.h" + +#define MAX_SOCK_NUM 4 + +class EthernetClass { +private: + IPAddress _dnsServerAddress; +public: + static uint8_t _state[MAX_SOCK_NUM]; + static uint16_t _server_port[MAX_SOCK_NUM]; + // Initialise the Ethernet shield to use the provided MAC address and gain the rest of the + // configuration through DHCP. + // Returns 0 if the DHCP configuration failed, and 1 if it succeeded + int begin(uint8_t *mac_address); + void begin(uint8_t *mac_address, IPAddress local_ip); + void begin(uint8_t *mac_address, IPAddress local_ip, IPAddress gateway); + void begin(uint8_t *mac_address, IPAddress local_ip, IPAddress gateway, IPAddress subnet); + + IPAddress localIP(); + IPAddress subnetMask(); + IPAddress gatewayIP(); + IPAddress dnsServerIP(); + + friend class Client; + friend class Server; +}; + +extern EthernetClass Ethernet; + +#endif |