| Index: webrtc/test/direct_transport.h
|
| diff --git a/webrtc/test/direct_transport.h b/webrtc/test/direct_transport.h
|
| index 0698992d5a871f48b266ae718cf11116af0fd3e2..6601b137c0bc8f51c477879406e9a7657c5be0eb 100644
|
| --- a/webrtc/test/direct_transport.h
|
| +++ b/webrtc/test/direct_transport.h
|
| @@ -16,9 +16,7 @@
|
|
|
| #include "webrtc/api/call/transport.h"
|
| #include "webrtc/call/call.h"
|
| -#include "webrtc/rtc_base/criticalsection.h"
|
| -#include "webrtc/rtc_base/event.h"
|
| -#include "webrtc/rtc_base/platform_thread.h"
|
| +#include "webrtc/rtc_base/thread_checker.h"
|
| #include "webrtc/test/fake_network_pipe.h"
|
|
|
| namespace webrtc {
|
| @@ -28,20 +26,28 @@ class PacketReceiver;
|
|
|
| namespace test {
|
|
|
| +class SingleThreadedTaskQueue;
|
| +
|
| class DirectTransport : public Transport {
|
| public:
|
| - DirectTransport(Call* send_call,
|
| + DirectTransport(SingleThreadedTaskQueue* task_queue,
|
| + Call* send_call,
|
| const std::map<uint8_t, MediaType>& payload_type_map);
|
| - DirectTransport(const FakeNetworkPipe::Config& config,
|
| +
|
| + DirectTransport(SingleThreadedTaskQueue* task_queue,
|
| + const FakeNetworkPipe::Config& config,
|
| Call* send_call,
|
| const std::map<uint8_t, MediaType>& payload_type_map);
|
| - DirectTransport(const FakeNetworkPipe::Config& config,
|
| +
|
| + DirectTransport(SingleThreadedTaskQueue* task_queue,
|
| + const FakeNetworkPipe::Config& config,
|
| Call* send_call,
|
| std::unique_ptr<Demuxer> demuxer);
|
|
|
| // This deprecated variant always uses MediaType::VIDEO.
|
| RTC_DEPRECATED explicit DirectTransport(Call* send_call)
|
| : DirectTransport(
|
| + nullptr, // TODO(eladalon): !!! Fix this.
|
| FakeNetworkPipe::Config(),
|
| send_call,
|
| std::unique_ptr<Demuxer>(new ForceDemuxer(MediaType::VIDEO))) {}
|
| @@ -50,7 +56,6 @@ class DirectTransport : public Transport {
|
|
|
| void SetConfig(const FakeNetworkPipe::Config& config);
|
|
|
| - virtual void StopSending();
|
| // TODO(holmer): Look into moving this to the constructor.
|
| virtual void SetReceiver(PacketReceiver* receiver);
|
|
|
| @@ -77,18 +82,17 @@ class DirectTransport : public Transport {
|
| RTC_DISALLOW_COPY_AND_ASSIGN(ForceDemuxer);
|
| };
|
|
|
| - static bool NetworkProcess(void* transport);
|
| - bool SendPackets();
|
| + void SendPackets();
|
|
|
| - rtc::CriticalSection lock_;
|
| Call* const send_call_;
|
| - rtc::Event packet_event_;
|
| - rtc::PlatformThread thread_;
|
| Clock* const clock_;
|
|
|
| - bool shutting_down_;
|
| + SingleThreadedTaskQueue* const task_queue_;
|
| + size_t next_task_; // TODO(eladalon): !!! Why can't the type be opaque?
|
|
|
| FakeNetworkPipe fake_network_;
|
| +
|
| + rtc::ThreadChecker thread_checker_;
|
| };
|
| } // namespace test
|
| } // namespace webrtc
|
|
|