Add CreateDatagram to MediaTransportFactory
Bug: webrtc:9719
Change-Id: I6e756d925917f032aa94a221706cd4241085b2a2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/137340
Commit-Queue: Anton Sukhanov <sukhanov@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#27980}
diff --git a/api/media_transport_interface.h b/api/media_transport_interface.h
index 718000e..00c407b 100644
--- a/api/media_transport_interface.h
+++ b/api/media_transport_interface.h
@@ -39,6 +39,7 @@
namespace webrtc {
+class DatagramTransportInterface;
class RtcEventLog;
class AudioPacketReceivedObserver {
@@ -382,6 +383,17 @@
CreateMediaTransport(rtc::Thread* network_thread,
const MediaTransportSettings& settings);
+ // Creates a new Datagram Transport in a disconnected state. If the datagram
+ // transport for the caller is created, one can then call
+ // DatagramTransportInterface::GetTransportParametersOffer on that new
+ // instance.
+ //
+ // TODO(sukhanov): Consider separating media and datagram transport factories.
+ // TODO(sukhanov): Move factory to a separate .h file.
+ virtual RTCErrorOr<std::unique_ptr<DatagramTransportInterface>>
+ CreateDatagramTransport(rtc::Thread* network_thread,
+ const MediaTransportSettings& settings);
+
// Gets a transport name which is supported by the implementation.
// Different factories should return different transport names, and at runtime
// it will be checked that different names were used.