ap

Dependencies:   DnsQuery

Dependents:   WizFi310_TCP_Echo_Server_Example

Fork of NetworkSocketAPI by NetworkSocketAPI

Revision:
81:1600369a29dd
Parent:
80:9c6673c93082
Child:
82:97d166c4a193
--- a/TCPSocket.cpp	Tue Apr 05 12:02:56 2016 -0500
+++ b/TCPSocket.cpp	Tue Apr 05 12:52:07 2016 -0500
@@ -62,3 +62,37 @@
 
     return _iface->socket_recv(_socket, data, size);
 }
+
+
+void TCPSocket::attach_send(mbed::FuncPtr<void()> callback)
+{
+    _send_cb = callback;
+
+    if (_socket && _send_cb) {
+        return _iface->socket_attach_send(_socket, Socket::thunk, &_send_cb);
+    } else if (_socket) {
+        return _iface->socket_attach_send(_socket, 0, 0);
+    }
+}
+
+void TCPSocket::attach_recv(mbed::FuncPtr<void()> callback)
+{
+    _recv_cb = callback;
+
+    if (_socket && _recv_cb) {
+        return _iface->socket_attach_recv(_socket, Socket::thunk, &_recv_cb);
+    } else if (_socket) {
+        return _iface->socket_attach_recv(_socket, 0, 0);
+    }
+}
+
+TCPSocket::~TCPSocket()
+{
+    if (_socket && _send_cb) {
+        _iface->socket_attach_send(_socket, 0, 0);
+    }
+
+    if (_socket && _recv_cb) {
+        _iface->socket_attach_recv(_socket, 0, 0);
+    }
+}