Adopt mbed style doxygen comments

per @0xc0170
Christopher Haster 2016-03-13 06:32:02 -05:00 committed by Russ Butler
parent f0f7972a64
commit 106e459a64
7 changed files with 209 additions and 213 deletions

View File

@ -20,9 +20,8 @@
#include "mbed.h" #include "mbed.h"
#include "SocketAddress.h" #include "SocketAddress.h"
/** /** Enum of standardized error codes
* @enum ns_error_t * @enum ns_error_t
* @brief enum of standardized error codes
*/ */
enum nsapi_error_t { enum nsapi_error_t {
NSAPI_ERROR_WOULD_BLOCK = -3001, /*!< no data is not available but call is non-blocking */ NSAPI_ERROR_WOULD_BLOCK = -3001, /*!< no data is not available but call is non-blocking */
@ -37,16 +36,15 @@ enum nsapi_error_t {
NSAPI_ERROR_DEVICE_ERROR = -3010, /*!< failure interfacing with the network procesor */ NSAPI_ERROR_DEVICE_ERROR = -3010, /*!< failure interfacing with the network procesor */
}; };
/** /** Enum of available options
* @enum ns_opt_t * @enum ns_opt_t
* @brief enum of available options
*/ */
enum ns_opt_t { enum ns_opt_t {
}; };
/** Enum of socket protocols /** Enum of socket protocols
/enum protocol_t * @enum protocol_t
*/ */
enum nsapi_protocol_t { enum nsapi_protocol_t {
NSAPI_TCP, /*!< Socket is of TCP type */ NSAPI_TCP, /*!< Socket is of TCP type */
NSAPI_UDP, /*!< Socket is of UDP type */ NSAPI_UDP, /*!< Socket is of UDP type */
@ -62,27 +60,27 @@ public:
virtual ~NetworkInterface() {}; virtual ~NetworkInterface() {};
/** Get the internally stored IP address /** Get the internally stored IP address
/return IP address of the interface or null if not yet connected * @return IP address of the interface or null if not yet connected
*/ */
virtual const char *get_ip_address() = 0; virtual const char *get_ip_address() = 0;
/** Get the internally stored MAC address /** Get the internally stored MAC address
/return MAC address of the interface * @return MAC address of the interface
*/ */
virtual const char *get_mac_address() = 0; virtual const char *get_mac_address() = 0;
/** Get the current status of the interface /** Get the current status of the interface
/return true if connected * @return true if connected
*/ */
virtual bool is_connected() { virtual bool is_connected() {
return get_ip_address() != NULL; return get_ip_address() != NULL;
} }
/** Looks up the specified host's IP address /** Looks up the specified host's IP address
/param name Hostname to lookup * @param name Hostname to lookup
/param dest Destination for IP address, must have space for SocketAddress::IP_SIZE * @param dest Destination for IP address, must have space for SocketAddress::IP_SIZE
/return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
virtual int gethostbyname(const char *name, char *dest); virtual int gethostbyname(const char *name, char *dest);
protected: protected:
@ -92,143 +90,143 @@ protected:
friend class TCPServer; friend class TCPServer;
/** Create a socket /** Create a socket
/param proto The type of socket to open, TCP or UDP * @param proto The type of socket to open, TCP or UDP
/return The alocated socket or null on failure * @return The alocated socket or null on failure
*/ */
virtual void *socket_create(nsapi_protocol_t proto) = 0; virtual void *socket_create(nsapi_protocol_t proto) = 0;
/** Destroy a socket /** Destroy a socket
/param socket Previously allocated socket * @param socket Previously allocated socket
*/ */
virtual void socket_destroy(void *handle) = 0; virtual void socket_destroy(void *handle) = 0;
/** Set socket options /** Set socket options
\param handle Socket handle * @param handle Socket handle
\param optname Option ID * @param optname Option ID
\param optval Option value * @param optval Option value
\param optlen Length of the option value * @param optlen Length of the option value
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
virtual int socket_set_option(void *handle, int optname, const void *optval, unsigned int optlen) = 0; virtual int socket_set_option(void *handle, int optname, const void *optval, unsigned int optlen) = 0;
/** Get socket options /** Get socket options
\param handle Socket handle * @param handle Socket handle
\param optname Option ID * @param optname Option ID
\param optval Buffer pointer where to write the option value * @param optval Buffer pointer where to write the option value
\param optlen Length of the option value * @param optlen Length of the option value
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
virtual int socket_get_option(void *handle, int optname, void *optval, unsigned int *optlen) = 0; virtual int socket_get_option(void *handle, int optname, void *optval, unsigned int *optlen) = 0;
/** Bind a server socket to a specific port /** Bind a server socket to a specific port
\param handle Socket handle * @param handle Socket handle
\param port The port to listen for incoming connections on * @param port The port to listen for incoming connections on
\return 0 on success, negative on failure. * @return 0 on success, negative on failure.
*/ */
virtual int socket_bind(void *handle, int port) = 0; virtual int socket_bind(void *handle, int port) = 0;
/** Start listening for incoming connections /** Start listening for incoming connections
\param handle Socket handle * @param handle Socket handle
\param backlog Number of pending connections that can be queued up at any * @param backlog Number of pending connections that can be queued up at any
one time [Default: 1] * one time [Default: 1]
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
virtual int socket_listen(void *handle, int backlog) = 0; virtual int socket_listen(void *handle, int backlog) = 0;
/** Connects this TCP socket to the server /** Connects this TCP socket to the server
\param handle Socket handle * @param handle Socket handle
\param address SocketAddress to connect to * @param address SocketAddress to connect to
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
virtual int socket_connect(void *handle, const SocketAddress &address) = 0; virtual int socket_connect(void *handle, const SocketAddress &address) = 0;
/** Check if the socket is connected /** Check if the socket is connected
\param handle Socket handle * @param handle Socket handle
\return true if connected, false otherwise * @return true if connected, false otherwise
*/ */
virtual bool socket_is_connected(void *handle) = 0; virtual bool socket_is_connected(void *handle) = 0;
/** Accept a new connection. /** Accept a new connection.
\param handle Socket handle * @param handle Socket handle
\param socket A TCPSocket instance that will handle the incoming connection. * @param socket A TCPSocket instance that will handle the incoming connection.
\return 0 on success, negative on failure. * @return 0 on success, negative on failure.
\note This call is not-blocking, if this call would block, must * @note This call is not-blocking, if this call would block, must
immediately return NSAPI_ERROR_WOULD_WAIT * immediately return NSAPI_ERROR_WOULD_WAIT
*/ */
virtual int socket_accept(void *handle, void **connection) = 0; virtual int socket_accept(void *handle, void **connection) = 0;
/** Send data to the remote host /** Send data to the remote host
\param handle Socket handle * @param handle Socket handle
\param data The buffer to send to the host * @param data The buffer to send to the host
\param size The length of the buffer to send * @param size The length of the buffer to send
\return Number of written bytes on success, negative on failure * @return Number of written bytes on success, negative on failure
\note This call is not-blocking, if this call would block, must * @note This call is not-blocking, if this call would block, must
immediately return NSAPI_ERROR_WOULD_WAIT * immediately return NSAPI_ERROR_WOULD_WAIT
*/ */
virtual int socket_send(void *handle, const void *data, unsigned size) = 0; virtual int socket_send(void *handle, const void *data, unsigned size) = 0;
/** Receive data from the remote host /** Receive data from the remote host
\param handle Socket handle * @param handle Socket handle
\param data The buffer in which to store the data received from the host * @param data The buffer in which to store the data received from the host
\param size The maximum length of the buffer * @param size The maximum length of the buffer
\return Number of received bytes on success, negative on failure * @return Number of received bytes on success, negative on failure
\note This call is not-blocking, if this call would block, must * @note This call is not-blocking, if this call would block, must
immediately return NSAPI_ERROR_WOULD_WAIT * immediately return NSAPI_ERROR_WOULD_WAIT
*/ */
virtual int socket_recv(void *handle, void *data, unsigned size) = 0; virtual int socket_recv(void *handle, void *data, unsigned size) = 0;
/** Send a packet to a remote endpoint /** Send a packet to a remote endpoint
\param handle Socket handle * @param handle Socket handle
\param address The remote SocketAddress * @param address The remote SocketAddress
\param data The packet to be sent * @param data The packet to be sent
\param size The length of the packet to be sent * @param size The length of the packet to be sent
\return the number of written bytes on success, negative on failure * @return the number of written bytes on success, negative on failure
\note This call is not-blocking, if this call would block, must * @note This call is not-blocking, if this call would block, must
immediately return NSAPI_ERROR_WOULD_WAIT * immediately return NSAPI_ERROR_WOULD_WAIT
*/ */
virtual int socket_sendto(void *handle, const SocketAddress &address, const void *data, unsigned size) = 0; virtual int socket_sendto(void *handle, const SocketAddress &address, const void *data, unsigned size) = 0;
/** Receive a packet from a remote endpoint /** Receive a packet from a remote endpoint
\param handle Socket handle * @param handle Socket handle
\param address Destination for the remote SocketAddress or null * @param address Destination for the remote SocketAddress or null
\param buffer The buffer for storing the incoming packet data * @param buffer The buffer for storing the incoming packet data
If a packet is too long to fit in the supplied buffer, * If a packet is too long to fit in the supplied buffer,
excess bytes are discarded * excess bytes are discarded
\param size The length of the buffer * @param size The length of the buffer
\return the number of received bytes on success, negative on failure * @return the number of received bytes on success, negative on failure
\note This call is not-blocking, if this call would block, must * @note This call is not-blocking, if this call would block, must
immediately return NSAPI_ERROR_WOULD_WAIT * immediately return NSAPI_ERROR_WOULD_WAIT
*/ */
virtual int socket_recvfrom(void *handle, SocketAddress *address, void *buffer, unsigned size) = 0; virtual int socket_recvfrom(void *handle, SocketAddress *address, void *buffer, unsigned size) = 0;
/** Close the socket /** Close the socket
\param handle Socket handle * @param handle Socket handle
\param shutdown free the left-over data in message queues * @param shutdown free the left-over data in message queues
*/ */
virtual int socket_close(void *handle, bool shutdown) = 0; virtual int socket_close(void *handle, bool shutdown) = 0;
/** Register a callback on when a new connection is ready /** Register a callback on when a new connection is ready
\param handle Socket handle * @param handle Socket handle
\param callback Function to call when accept will succeed, may be called in * @param callback Function to call when accept will succeed, may be called in
interrupt context. * interrupt context.
\param id Argument to pass to callback * @param id Argument to pass to callback
*/ */
virtual void socket_attach_accept(void *handle, void (*callback)(void *), void *id) = 0; virtual void socket_attach_accept(void *handle, void (*callback)(void *), void *id) = 0;
/** Register a callback on when send is ready /** Register a callback on when send is ready
\param handle Socket handle * @param handle Socket handle
\param callback Function to call when accept will succeed, may be called in * @param callback Function to call when accept will succeed, may be called in
interrupt context. * interrupt context.
\param id Argument to pass to callback * @param id Argument to pass to callback
*/ */
virtual void socket_attach_send(void *handle, void (*callback)(void *), void *id) = 0; virtual void socket_attach_send(void *handle, void (*callback)(void *), void *id) = 0;
/** Register a callback on when recv is ready /** Register a callback on when recv is ready
\param handle Socket handle * @param handle Socket handle
\param callback Function to call when accept will succeed, may be called in * @param callback Function to call when accept will succeed, may be called in
interrupt context. * interrupt context.
\param id Argument to pass to callback * @param id Argument to pass to callback
*/ */
virtual void socket_attach_recv(void *handle, void (*callback)(void *), void *id) = 0; virtual void socket_attach_recv(void *handle, void (*callback)(void *), void *id) = 0;
}; };

View File

@ -29,34 +29,34 @@ public:
virtual ~Socket(); virtual ~Socket();
/** Set blocking or non-blocking mode of the socket /** Set blocking or non-blocking mode of the socket
\param blocking true for blocking mode, false for non-blocking mode. * @param blocking true for blocking mode, false for non-blocking mode.
*/ */
void set_blocking(bool blocking); void set_blocking(bool blocking);
/** Set timeout on a socket operation if blocking behaviour is enabled /** Set timeout on a socket operation if blocking behaviour is enabled
\param timeout timeout in ms * @param timeout timeout in ms
*/ */
void set_timeout(unsigned int timeout); void set_timeout(unsigned int timeout);
/** Set socket options /* Set socket options
\param optname Option ID * @param optname Option ID
\param optval Option value * @param optval Option value
\param optlen Length of the option value * @param optlen Length of the option value
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
int set_option(int optname, const void *optval, unsigned optlen); int set_option(int optname, const void *optval, unsigned optlen);
/** Get socket options /* Get socket options
\param optname Option ID * @param optname Option ID
\param optval Buffer pointer where to write the option value * @param optval Buffer pointer where to write the option value
\param optlen Length of the option value * @param optlen Length of the option value
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
int get_option(int optname, void *optval, unsigned *optlen); int get_option(int optname, void *optval, unsigned *optlen);
/** Close the socket /** Close the socket
\param shutdown free the left-over data in message queues * @param shutdown free the left-over data in message queues
*/ */
int close(bool shutdown=true); int close(bool shutdown=true);
protected: protected:

View File

@ -36,42 +36,42 @@ class NetworkInterface;
class SocketAddress { class SocketAddress {
public: public:
/** SocketAddress construction using DNS resolution /** SocketAddress construction using DNS resolution
/param iface NetworkInterface to use for DNS resolution * @param iface NetworkInterface to use for DNS resolution
/param addr Null-terminated hostname that will be resolved * @param addr Null-terminated hostname that will be resolved
/param port 16-bit port * @param port 16-bit port
/note on failure, IP address and port will be set to null * @note on failure, IP address and port will be set to null
*/ */
SocketAddress(NetworkInterface *iface, const char *addr, uint16_t port = 0); SocketAddress(NetworkInterface *iface, const char *addr, uint16_t port = 0);
/** SocketAddress construction /** SocketAddress construction
/param addr Null-terminated IP address * @param addr Null-terminated IP address
/param port 16-bit port * @param port 16-bit port
/note on failure, IP address and port will be set to null * @note on failure, IP address and port will be set to null
*/ */
SocketAddress(const char *addr = 0, uint16_t port = 0); SocketAddress(const char *addr = 0, uint16_t port = 0);
/** SocketAddress construction /** SocketAddress construction
/param addr SocketAddress to copy * @param addr SocketAddress to copy
*/ */
SocketAddress(const SocketAddress &addr); SocketAddress(const SocketAddress &addr);
/** Set the IP address /** 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); void set_ip_address(const char *addr);
/** Set the port /** Set the port
\param port 16-bit port * @param port 16-bit port
*/ */
void set_port(uint16_t port); void set_port(uint16_t port);
/** Get the IP address /** 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; const char *get_ip_address() const;
/** Get the port /** Get the port
\return The 16-bit port * @return The 16-bit port
*/ */
uint16_t get_port(void) const; uint16_t get_port(void) const;

View File

@ -26,33 +26,33 @@
class TCPServer : public Socket { class TCPServer : public Socket {
public: public:
/** TCP Server lifetime /** TCP Server lifetime
*/ */
TCPServer(NetworkInterface *iface); TCPServer(NetworkInterface *iface);
virtual ~TCPServer(); virtual ~TCPServer();
/** Bind a socket to a specific port /** Bind a socket to a specific port
\param port The port to listen for incoming connections on * @param port The port to listen for incoming connections on
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
int bind(uint16_t port); int bind(uint16_t port);
/** Start listening for incoming connections /** Start listening for incoming connections
\param backlog Number of pending connections that can be queued up at any * @param backlog Number of pending connections that can be queued up at any
one time [Default: 1] * one time [Default: 1]
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
int listen(int backlog=1); int listen(int backlog=1);
/** Accept a new connection. /** Accept a new connection.
\param socket A TCPSocket instance that will handle the incoming connection. * @param socket A TCPSocket instance that will handle the incoming connection.
\return 0 on success, negative on failure. * @return 0 on success, negative on failure.
*/ */
int accept(TCPSocket *connection); int accept(TCPSocket *connection);
/** Register a callback on when a new connection is ready /** Register a callback on when a new connection is ready
\param callback Function to call when accept will succeed, may be called in * @param callback Function to call when accept will succeed, may be called in
interrupt context. * interrupt context.
*/ */
void attach_accept(FunctionPointer callback); void attach_accept(FunctionPointer callback);
template <typename T, typename M> template <typename T, typename M>

View File

@ -20,53 +20,52 @@
#include "Socket.h" #include "Socket.h"
#include "NetworkInterface.h" #include "NetworkInterface.h"
/** /** TCP socket connection
TCP socket connection */
*/
class TCPSocket : public Socket { class TCPSocket : public Socket {
public: public:
/** TCP socket lifetime /** TCP socket lifetime
*/ */
TCPSocket(NetworkInterface *iface); TCPSocket(NetworkInterface *iface);
virtual ~TCPSocket(); virtual ~TCPSocket();
/** Connects this TCP socket to the server /** Connects this TCP socket to the server
\param host The host to connect to. It can either be an IP Address * @param host The host to connect to. It can either be an IP Address
or a hostname that will be resolved with DNS * or a hostname that will be resolved with DNS
\param port The host's port to connect to * @param port The host's port to connect to
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
int connect(const char *host, uint16_t port); int connect(const char *host, uint16_t port);
/** Connects this TCP socket to the server /** Connects this TCP socket to the server
\param address SocketAddress to connect to * @param address SocketAddress to connect to
\return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
int connect(const SocketAddress &address); int connect(const SocketAddress &address);
/** Check if the socket is connected /** Check if the socket is connected
\return true if connected, false otherwise * @return true if connected, false otherwise
*/ */
bool is_connected(); bool is_connected();
/** Send data to the remote host /** Send data to the remote host
\param data The buffer to send to the host * @param data The buffer to send to the host
\param size The length of the buffer to send * @param size The length of the buffer to send
\return Number of written bytes on success, negative on failure * @return Number of written bytes on success, negative on failure
*/ */
int send(const void *data, unsigned size); int send(const void *data, unsigned size);
/** Receive data from the remote host /** Receive data from the remote host
\param data The buffer in which to store the data received from the host * @param data The buffer in which to store the data received from the host
\param size The maximum length of the buffer * @param size The maximum length of the buffer
\return Number of received bytes on success, negative on failure * @return Number of received bytes on success, negative on failure
*/ */
int recv(void *data, unsigned size); int recv(void *data, unsigned size);
/** Register a callback on when send is ready /** Register a callback on when send is ready
\param callback Function to call when send will succeed, may be called in * @param callback Function to call when send will succeed, may be called in
interrupt context. * interrupt context.
*/ */
void attach_send(FunctionPointer callback); void attach_send(FunctionPointer callback);
template <typename T, typename M> template <typename T, typename M>
@ -75,9 +74,9 @@ public:
} }
/** Register a callback on when recv is ready /** Register a callback on when recv is ready
\param callback Function to call when recv will succeed, may be called in * @param callback Function to call when recv will succeed, may be called in
interrupt context. * interrupt context.
*/ */
void attach_recv(FunctionPointer callback); void attach_recv(FunctionPointer callback);
template <typename T, typename M> template <typename T, typename M>

View File

@ -20,44 +20,43 @@
#include "Socket.h" #include "Socket.h"
#include "NetworkInterface.h" #include "NetworkInterface.h"
/** /** UDP Socket
UDP Socket */
*/
class UDPSocket : public Socket { class UDPSocket : public Socket {
public: public:
/** UDPSocket lifetime /** UDPSocket lifetime
*/ */
UDPSocket(NetworkInterface *iface); UDPSocket(NetworkInterface *iface);
virtual ~UDPSocket(); virtual ~UDPSocket();
/** Bind a UDP Server Socket to a specific port /** Bind a UDP Server Socket to a specific port
\param port The port to listen for incoming connections on * @param port The port to listen for incoming connections on
\return 0 on success, negative on failure. * @return 0 on success, negative on failure.
*/ */
int bind(uint16_t port); int bind(uint16_t port);
/** Send a packet to a remote endpoint /** Send a packet to a remote endpoint
\param address The remote SocketAddress * @param address The remote SocketAddress
\param data The packet to be sent * @param data The packet to be sent
\param size The length of the packet to be sent * @param size The length of the packet to be sent
\return the number of written bytes on success, negative on failure * @return The number of written bytes on success, negative on failure
*/ */
int sendto(const SocketAddress &address, const void *data, unsigned size); int sendto(const SocketAddress &address, const void *data, unsigned size);
/** Receive a packet from a remote endpoint /** Receive a packet from a remote endpoint
\param address Destination for the remote SocketAddress or null * @param address Destination for the remote SocketAddress or null
\param buffer The buffer for storing the incoming packet data * @param buffer The buffer for storing the incoming packet data
If a packet is too long to fit in the supplied buffer, * If a packet is too long to fit in the supplied buffer,
excess bytes are discarded * excess bytes are discarded
\param size The length of the buffer * @param size The length of the buffer
\return the number of received bytes on success, negative on failure * @return The number of received bytes on success, negative on failure
*/ */
int recvfrom(SocketAddress *address, void *buffer, unsigned size); int recvfrom(SocketAddress *address, void *buffer, unsigned size);
/** Register a callback on when send is ready /** Register a callback on when send is ready
\param callback Function to call when send will succeed, may be called in * @param callback Function to call when send will succeed, may be called in
interrupt context. * interrupt context.
*/ */
void attach_send(FunctionPointer callback); void attach_send(FunctionPointer callback);
template <typename T, typename M> template <typename T, typename M>
@ -66,9 +65,9 @@ public:
} }
/** Register a callback on when recv is ready /** Register a callback on when recv is ready
\param callback Function to call when recv will succeed, may be called in * @param callback Function to call when recv will succeed, may be called in
interrupt context. * interrupt context.
*/ */
void attach_recv(FunctionPointer callback); void attach_recv(FunctionPointer callback);
template <typename T, typename M> template <typename T, typename M>

View File

@ -20,7 +20,7 @@
#include "NetworkInterface.h" #include "NetworkInterface.h"
/** Enum for WiFi encryption types /** Enum for WiFi encryption types
*/ */
enum nsapi_security_t { enum nsapi_security_t {
NSAPI_SECURITY_NONE = 0, /*!< open access point */ NSAPI_SECURITY_NONE = 0, /*!< open access point */
NSAPI_SECURITY_WEP, /*!< phrase conforms to WEP */ NSAPI_SECURITY_WEP, /*!< phrase conforms to WEP */
@ -35,16 +35,16 @@ class WiFiInterface : public NetworkInterface
{ {
public: public:
/** Start the interface /** Start the interface
/param ssid Name of the network to connect to * @param ssid Name of the network to connect to
/param pass Security passphrase to connect to the network * @param pass Security passphrase to connect to the network
/param security Type of encryption for connection * @param security Type of encryption for connection
/return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
virtual int connect(const char *ssid, const char *pass, nsapi_security_t security = NSAPI_SECURITY_NONE) = 0; virtual int connect(const char *ssid, const char *pass, nsapi_security_t security = NSAPI_SECURITY_NONE) = 0;
/** Stop the interface /** Stop the interface
/return 0 on success, negative on failure * @return 0 on success, negative on failure
*/ */
virtual int disconnect() = 0; virtual int disconnect() = 0;
}; };