| Index: media/cast/net/udp_transport.h
|
| diff --git a/media/cast/net/udp_transport.h b/media/cast/net/udp_transport.h
|
| index 6da6ae3ac18a2b23da4e4981520d2f33acc8d980..c098a58594309f652701f37a897e16860606c6bd 100644
|
| --- a/media/cast/net/udp_transport.h
|
| +++ b/media/cast/net/udp_transport.h
|
| @@ -11,10 +11,12 @@
|
| #include "base/memory/ref_counted.h"
|
| #include "base/memory/scoped_ptr.h"
|
| #include "base/memory/weak_ptr.h"
|
| +#include "base/values.h"
|
| #include "build/build_config.h"
|
| #include "media/cast/cast_environment.h"
|
| #include "media/cast/net/cast_transport_config.h"
|
| #include "media/cast/net/cast_transport_sender.h"
|
| +#include "media/cast/net/pacing/paced_sender.h"
|
| #include "net/base/io_buffer.h"
|
| #include "net/base/ip_endpoint.h"
|
| #include "net/udp/diff_serv_code_point.h"
|
| @@ -44,18 +46,35 @@ class UdpTransport : public PacketSender {
|
| const scoped_refptr<base::SingleThreadTaskRunner>& io_thread_proxy,
|
| const net::IPEndPoint& local_end_point,
|
| const net::IPEndPoint& remote_end_point,
|
| - int32_t send_buffer_size,
|
| const CastTransportStatusCallback& status_callback);
|
| ~UdpTransport() final;
|
|
|
| // Start receiving packets. Packets are submitted to |packet_receiver|.
|
| - void StartReceiving(const PacketReceiverCallbackWithStatus& packet_receiver);
|
| - void StopReceiving();
|
| + void StartReceiving(
|
| + const PacketReceiverCallbackWithStatus& packet_receiver) final;
|
| + void StopReceiving() final;
|
|
|
| // Set a new DSCP value to the socket. The value will be set right before
|
| // the next send.
|
| void SetDscp(net::DiffServCodePoint dscp);
|
|
|
| + // Set UdpTransport options.
|
| + // Possible keys are:
|
| + // "pacer_max_burst_size": int
|
| + // - Specifies how many pakcets to send per 10 ms, maximum.
|
| + // "send_buffer_min_size": int
|
| + // - Specifies the minimum socket send buffer size.
|
| + // "DSCP" (value ignored)
|
| + // - Turns DSCP on (higher IP Precedence and Type of Service).
|
| + // "disable_non_blocking_io" (value ignored)
|
| + // - Windows only. Turns off non-blocking IO for the socket.
|
| + // Note: Non-blocking IO is, by default, enabled on all platforms.
|
| + void SetUdpOptions(const base::DictionaryValue& options);
|
| +
|
| + // This has to be called before |StartReceiving()| to change the
|
| + // |send_buffer_size_|. Calling |SetUdpOptions()| will automatically call it.
|
| + void SetSendBufferSize(int32_t send_buffer_size);
|
| +
|
| #if defined(OS_WIN)
|
| // Switch to use non-blocking IO. Must be called before StartReceiving().
|
| void UseNonBlockingIO();
|
|
|