OLD | NEW |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 #ifndef WEBRTC_CALL_CALL_H_ | 10 #ifndef WEBRTC_CALL_CALL_H_ |
11 #define WEBRTC_CALL_CALL_H_ | 11 #define WEBRTC_CALL_CALL_H_ |
12 | 12 |
13 #include <memory> | |
13 #include <string> | 14 #include <string> |
14 #include <vector> | 15 #include <vector> |
15 | 16 |
16 #include "webrtc/base/networkroute.h" | 17 #include "webrtc/base/networkroute.h" |
17 #include "webrtc/base/platform_file.h" | 18 #include "webrtc/base/platform_file.h" |
18 #include "webrtc/base/socket.h" | 19 #include "webrtc/base/socket.h" |
19 #include "webrtc/call/audio_receive_stream.h" | 20 #include "webrtc/call/audio_receive_stream.h" |
20 #include "webrtc/call/audio_send_stream.h" | 21 #include "webrtc/call/audio_send_stream.h" |
21 #include "webrtc/call/audio_state.h" | 22 #include "webrtc/call/audio_state.h" |
22 #include "webrtc/call/flexfec_receive_stream.h" | 23 #include "webrtc/call/flexfec_receive_stream.h" |
24 #include "webrtc/call/rtp_transport_controller_send_interface.h" | |
23 #include "webrtc/common_types.h" | 25 #include "webrtc/common_types.h" |
24 #include "webrtc/video_receive_stream.h" | 26 #include "webrtc/video_receive_stream.h" |
25 #include "webrtc/video_send_stream.h" | 27 #include "webrtc/video_send_stream.h" |
26 | 28 |
27 namespace webrtc { | 29 namespace webrtc { |
28 | 30 |
29 class AudioProcessing; | 31 class AudioProcessing; |
30 class RtcEventLog; | 32 class RtcEventLog; |
31 | 33 |
32 enum class MediaType { | 34 enum class MediaType { |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
91 | 93 |
92 int send_bandwidth_bps = 0; // Estimated available send bandwidth. | 94 int send_bandwidth_bps = 0; // Estimated available send bandwidth. |
93 int max_padding_bitrate_bps = 0; // Cumulative configured max padding. | 95 int max_padding_bitrate_bps = 0; // Cumulative configured max padding. |
94 int recv_bandwidth_bps = 0; // Estimated available receive bandwidth. | 96 int recv_bandwidth_bps = 0; // Estimated available receive bandwidth. |
95 int64_t pacer_delay_ms = 0; | 97 int64_t pacer_delay_ms = 0; |
96 int64_t rtt_ms = -1; | 98 int64_t rtt_ms = -1; |
97 }; | 99 }; |
98 | 100 |
99 static Call* Create(const Call::Config& config); | 101 static Call* Create(const Call::Config& config); |
100 | 102 |
103 // Allows mocking |transport_send| for testing. | |
Stefan
2017/05/01 11:17:06
I think this is what we want the interface to be i
nisse-webrtc
2017/05/02 07:01:29
Not quite. My plan is that RtpTransportController
| |
104 static Call* Create( | |
105 const Call::Config& config, | |
106 std::unique_ptr<RtpTransportControllerSendInterface> transport_send); | |
107 | |
101 virtual AudioSendStream* CreateAudioSendStream( | 108 virtual AudioSendStream* CreateAudioSendStream( |
102 const AudioSendStream::Config& config) = 0; | 109 const AudioSendStream::Config& config) = 0; |
103 virtual void DestroyAudioSendStream(AudioSendStream* send_stream) = 0; | 110 virtual void DestroyAudioSendStream(AudioSendStream* send_stream) = 0; |
104 | 111 |
105 virtual AudioReceiveStream* CreateAudioReceiveStream( | 112 virtual AudioReceiveStream* CreateAudioReceiveStream( |
106 const AudioReceiveStream::Config& config) = 0; | 113 const AudioReceiveStream::Config& config) = 0; |
107 virtual void DestroyAudioReceiveStream( | 114 virtual void DestroyAudioReceiveStream( |
108 AudioReceiveStream* receive_stream) = 0; | 115 AudioReceiveStream* receive_stream) = 0; |
109 | 116 |
110 virtual VideoSendStream* CreateVideoSendStream( | 117 virtual VideoSendStream* CreateVideoSendStream( |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
157 const rtc::NetworkRoute& network_route) = 0; | 164 const rtc::NetworkRoute& network_route) = 0; |
158 | 165 |
159 virtual void OnSentPacket(const rtc::SentPacket& sent_packet) = 0; | 166 virtual void OnSentPacket(const rtc::SentPacket& sent_packet) = 0; |
160 | 167 |
161 virtual ~Call() {} | 168 virtual ~Call() {} |
162 }; | 169 }; |
163 | 170 |
164 } // namespace webrtc | 171 } // namespace webrtc |
165 | 172 |
166 #endif // WEBRTC_CALL_CALL_H_ | 173 #endif // WEBRTC_CALL_CALL_H_ |
OLD | NEW |