Index: remoting/protocol/transport.h |
diff --git a/remoting/protocol/transport.h b/remoting/protocol/transport.h |
index b037c50ce6052528d790a23af07e3c65eace8cf9..055381ac29cf138ef433d377c9440194d545e7b5 100644 |
--- a/remoting/protocol/transport.h |
+++ b/remoting/protocol/transport.h |
@@ -22,6 +22,10 @@ namespace buzz { |
class XmlElement; |
} // namespace buzz |
+namespace webrtc { |
+class PeerConnectionInterface; |
+} // namespace webrtc |
+ |
namespace remoting { |
namespace protocol { |
@@ -29,6 +33,7 @@ class Authenticator; |
class DatagramChannelFactory; |
class P2PDatagramSocket; |
class StreamChannelFactory; |
+class WebrtcTransport; |
enum class TransportRole { |
SERVER, |
@@ -92,6 +97,15 @@ class Transport { |
// channel. |
virtual StreamChannelFactory* GetMultiplexedChannelFactory() = 0; |
+ // Returns the transport as WebrtcTransport or nullptr if this is not a |
+ // WebrtcTransport. |
+ // |
+ // TODO(sergeyu): Move creation and ownership of Transport objects to the |
+ // Connection classes. That way the Connection classes will be able to ensure |
+ // that correct transport implementation is used for the connection and this |
+ // method will not be necessary. |
+ virtual WebrtcTransport* AsWebrtcTransport(); |
+ |
private: |
DISALLOW_COPY_AND_ASSIGN(Transport); |
}; |