| Index: webrtc/api/quicdatatransport.h
|
| diff --git a/webrtc/api/quicdatatransport.h b/webrtc/api/quicdatatransport.h
|
| index 96fe2a0ad73ebf2c56bdea41090ca53604f3df1f..b4e57cc15f75dabafad964afdf3720b91610d890 100644
|
| --- a/webrtc/api/quicdatatransport.h
|
| +++ b/webrtc/api/quicdatatransport.h
|
| @@ -19,6 +19,7 @@
|
| #include "webrtc/base/scoped_ref_ptr.h"
|
| #include "webrtc/base/sigslot.h"
|
| #include "webrtc/base/thread.h"
|
| +#include "webrtc/p2p/base/transportcontroller.h"
|
|
|
| namespace cricket {
|
| class QuicTransportChannel;
|
| @@ -38,9 +39,21 @@ class QuicDataTransport : public sigslot::has_slots<> {
|
| public:
|
| QuicDataTransport(rtc::Thread* signaling_thread,
|
| rtc::Thread* worker_thread,
|
| - rtc::Thread* network_thread);
|
| + rtc::Thread* network_thread,
|
| + cricket::TransportController* transport_controller);
|
| ~QuicDataTransport() override;
|
|
|
| + // The QuicDataTransport acts like a BaseChannel with these functions.
|
| + bool SetTransport(const std::string& transport_name);
|
| + const std::string& transport_name() const { return transport_name_; }
|
| + void set_transport_name(const std::string& transport_name) {
|
| + transport_name_ = transport_name;
|
| + }
|
| + const std::string& content_name() const { return content_name_; }
|
| + void set_content_name(const std::string& content_name) {
|
| + content_name_ = content_name;
|
| + }
|
| +
|
| // Sets the QUIC transport channel for the QuicDataChannels and the
|
| // QuicDataTransport. Returns false if a different QUIC transport channel is
|
| // already set, the QUIC transport channel cannot be set for any of the
|
| @@ -74,6 +87,10 @@ class QuicDataTransport : public sigslot::has_slots<> {
|
| const char* data,
|
| size_t len);
|
|
|
| + cricket::QuicTransportChannel* CreateTransportChannel(
|
| + const std::string& transport_name);
|
| + void DestroyTransportChannels();
|
| +
|
| // Map of data channel ID => QUIC data channel values.
|
| std::unordered_map<int, rtc::scoped_refptr<QuicDataChannel>>
|
| data_channel_by_id_;
|
| @@ -86,6 +103,11 @@ class QuicDataTransport : public sigslot::has_slots<> {
|
| rtc::Thread* const signaling_thread_;
|
| rtc::Thread* const worker_thread_;
|
| rtc::Thread* const network_thread_;
|
| +
|
| + std::string content_name_;
|
| + // Transport related members that should be accessed from network thread.
|
| + cricket::TransportController* transport_controller_;
|
| + std::string transport_name_;
|
| };
|
|
|
| } // namespace webrtc
|
|
|