Chromium Code Reviews| Index: media/cast/test/simulator.cc |
| diff --git a/media/cast/test/simulator.cc b/media/cast/test/simulator.cc |
| index 7122c8fd316e4fde867cf05d12c2f8395eb391c5..eab0489651a4b5b5f83313f368233fe8712448e0 100644 |
| --- a/media/cast/test/simulator.cc |
| +++ b/media/cast/test/simulator.cc |
| @@ -387,12 +387,38 @@ void RunSimulation(const base::FilePath& source_path, |
| LoopBackTransport receiver_to_sender(receiver_env); |
| LoopBackTransport sender_to_receiver(sender_env); |
| + struct PacketProxy { |
| + PacketProxy() : receiver(NULL) {} |
| + void ReceivePacket(scoped_ptr<Packet> packet) { |
| + if (receiver) receiver->ReceivePacket(packet.Pass()); |
|
miu
2014/12/04 04:18:55
style nit: Need newline before start of then-claus
hubbe
2014/12/05 23:57:20
Done.
|
| + } |
| + CastReceiver* receiver; |
| + }; |
| + |
| + PacketProxy packet_proxy; |
| + |
| // Cast receiver. |
| + scoped_ptr<CastTransportSender> transport_receiver( |
| + new CastTransportSenderImpl( |
| + NULL, |
| + &testing_clock, |
| + net::IPEndPoint(), |
| + net::IPEndPoint(), |
| + make_scoped_ptr(new base::DictionaryValue), |
| + base::Bind(&UpdateCastTransportStatus), |
| + base::Bind(&LogTransportEvents, receiver_env), |
| + base::TimeDelta::FromSeconds(1), |
| + task_runner, |
| + base::Bind(&PacketProxy::ReceivePacket, |
| + base::Unretained(&packet_proxy)), |
| + &receiver_to_sender)); |
| scoped_ptr<CastReceiver> cast_receiver( |
| CastReceiver::Create(receiver_env, |
| audio_receiver_config, |
| video_receiver_config, |
| - &receiver_to_sender)); |
| + transport_receiver.get())); |
| + |
| + packet_proxy.receiver = cast_receiver.get(); |
| // Cast sender and transport sender. |
| scoped_ptr<CastTransportSender> transport_sender( |
| @@ -400,11 +426,13 @@ void RunSimulation(const base::FilePath& source_path, |
| NULL, |
| &testing_clock, |
| net::IPEndPoint(), |
| + net::IPEndPoint(), |
| make_scoped_ptr(new base::DictionaryValue), |
| base::Bind(&UpdateCastTransportStatus), |
| base::Bind(&LogTransportEvents, sender_env), |
| base::TimeDelta::FromSeconds(1), |
| task_runner, |
| + PacketReceiverCallback(), |
| &sender_to_receiver)); |
| scoped_ptr<CastSender> cast_sender( |
| CastSender::Create(sender_env, transport_sender.get())); |
| @@ -429,7 +457,7 @@ void RunSimulation(const base::FilePath& source_path, |
| task_runner, &testing_clock); |
| sender_to_receiver.Initialize( |
| ipp->NewBuffer(128 * 1024).Pass(), |
| - cast_receiver->packet_receiver(), task_runner, |
| + transport_receiver->PacketReceiverForTesting(), task_runner, |
| &testing_clock); |
| } else { |
| LOG(INFO) << "No network simulation."; |
| @@ -439,7 +467,7 @@ void RunSimulation(const base::FilePath& source_path, |
| task_runner, &testing_clock); |
| sender_to_receiver.Initialize( |
| scoped_ptr<test::PacketPipe>(), |
| - cast_receiver->packet_receiver(), task_runner, |
| + transport_receiver->PacketReceiverForTesting(), task_runner, |
| &testing_clock); |
| } |