NetworkSocketAPI
Dependents: HelloWizFi250Interface
Fork of NetworkSocketAPI by
Diff: SocketAddress.h
- Revision:
- 80:9c6673c93082
- Parent:
- 79:43a7e8c0d6cc
- Child:
- 87:94e2cf3a06be
--- a/SocketAddress.h Tue Apr 05 10:40:34 2016 -0500 +++ b/SocketAddress.h Tue Apr 05 12:02:56 2016 -0500 @@ -19,40 +19,60 @@ #include <stdint.h> +// Predeclared classes +class NetworkInterface; + /** * A general socket address composed of the IP address and port */ class SocketAddress { public: + /** Maximum size of IP address + */ + static const int IP_SIZE = 16; + + /** SocketAddress construction using DNS resolution + /param iface NetworkInterface to use for DNS resolution + /param addr Null-terminated hostname that will be resolved + /param port 16-bit port + /note on failure, IP address and port will be set to null + */ + SocketAddress(NetworkInterface *iface, const char *addr, uint16_t port = 0); + /** SocketAddress construction - /param addr Null-terminated string representing the IP address - /param port 16-bit port - */ + /param addr Null-terminated IP address + /param port 16-bit port + /note on failure, IP address and port will be set to null + */ SocketAddress(const char *addr = 0, uint16_t port = 0); - SocketAddress(const SocketAddress &); + + /** SocketAddress construction + /param addr SocketAddress to copy + */ + SocketAddress(const SocketAddress &addr); /** Set the IP address - \param addr Null-terminated string representing the IP address + \param addr Null-terminated string representing the IP address */ void set_ip_address(const char *addr); /** Set the port - \param port 16-bit port + \param port 16-bit port */ void set_port(uint16_t port); /** Get the IP address - \return The string representation of the IP Address + \return The string representation of the IP Address */ const char *get_ip_address() const; /** Get the port - \return The 16-bit port + \return The 16-bit port */ uint16_t get_port(void) const; private: - char _ip_address[16]; + char _ip_address[IP_SIZE]; uint16_t _port; };