Chromium Code Reviews| Index: net/socket/tcp_socket_posix.h |
| diff --git a/net/socket/tcp_socket_posix.h b/net/socket/tcp_socket_posix.h |
| index 8d53caf567f38b96b6abfba189592b20865d7cff..a8c681ef4102261d0a43cb1cb4efcd76091e2cbb 100644 |
| --- a/net/socket/tcp_socket_posix.h |
| +++ b/net/socket/tcp_socket_posix.h |
| @@ -15,6 +15,7 @@ |
| #include "net/base/address_family.h" |
| #include "net/base/completion_callback.h" |
| #include "net/base/net_export.h" |
| +#include "net/base/socket_performance_watcher.h" |
|
bengr
2016/02/08 18:51:14
Can this be a forward declaration?
tbansal1
2016/02/08 21:33:26
No, that gives compiler error: gnu/4.6/../../../..
bengr
2016/02/08 23:42:06
Acknowledged.
|
| #include "net/log/net_log.h" |
| namespace net { |
| @@ -26,7 +27,10 @@ class SocketPosix; |
| class NET_EXPORT TCPSocketPosix { |
| public: |
| - TCPSocketPosix(NetLog* net_log, const NetLog::Source& source); |
| + TCPSocketPosix( |
| + scoped_ptr<SocketPerformanceWatcher> socket_performance_watcher, |
| + NetLog* net_log, |
| + const NetLog::Source& source); |
| virtual ~TCPSocketPosix(); |
| int Open(AddressFamily family); |
| @@ -197,12 +201,20 @@ class NET_EXPORT TCPSocketPosix { |
| int buf_len, |
| const CompletionCallback& callback); |
| + // Notifies |socket_performance_watcher_| of the latest RTT estimate available |
| + // from the tcp_info struct for this TCP socket. |
| + void NotifySocketPerformanceWatcher() const; |
| + |
| // Called after the first read completes on a TCP FastOpen socket. |
| void UpdateTCPFastOpenStatusAfterRead(); |
| scoped_ptr<SocketPosix> socket_; |
| scoped_ptr<SocketPosix> accept_socket_; |
| + // Socket performance statistics (such as RTT) are reported to the |
| + // |socket_performance_watcher_|. May be nullptr. |
| + scoped_ptr<SocketPerformanceWatcher> socket_performance_watcher_; |
| + |
| // Enables experimental TCP FastOpen option. |
| bool use_tcp_fastopen_; |