Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(493)

Side by Side Diff: webrtc/pc/channelmanager.h

Issue 2564333002: Reland of: Separating SCTP code from BaseChannel/MediaChannel. (Closed)
Patch Set: Merge with master. Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « webrtc/pc/channel_unittest.cc ('k') | webrtc/pc/channelmanager.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2004 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2004 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 10
(...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after
103 VideoChannel* CreateVideoChannel( 103 VideoChannel* CreateVideoChannel(
104 webrtc::MediaControllerInterface* media_controller, 104 webrtc::MediaControllerInterface* media_controller,
105 TransportController* transport_controller, 105 TransportController* transport_controller,
106 const std::string& content_name, 106 const std::string& content_name,
107 const std::string* bundle_transport_name, 107 const std::string* bundle_transport_name,
108 bool rtcp, 108 bool rtcp,
109 bool srtp_required, 109 bool srtp_required,
110 const VideoOptions& options); 110 const VideoOptions& options);
111 // Destroys a video channel created with the Create API. 111 // Destroys a video channel created with the Create API.
112 void DestroyVideoChannel(VideoChannel* video_channel); 112 void DestroyVideoChannel(VideoChannel* video_channel);
113 DataChannel* CreateDataChannel( 113 RtpDataChannel* CreateRtpDataChannel(
114 webrtc::MediaControllerInterface* media_controller, 114 webrtc::MediaControllerInterface* media_controller,
115 TransportController* transport_controller, 115 TransportController* transport_controller,
116 const std::string& content_name, 116 const std::string& content_name,
117 const std::string* bundle_transport_name, 117 const std::string* bundle_transport_name,
118 bool rtcp, 118 bool rtcp,
119 bool srtp_required, 119 bool srtp_required);
120 DataChannelType data_channel_type);
121 // Destroys a data channel created with the Create API. 120 // Destroys a data channel created with the Create API.
122 void DestroyDataChannel(DataChannel* data_channel); 121 void DestroyRtpDataChannel(RtpDataChannel* data_channel);
123 122
124 // Indicates whether any channels exist. 123 // Indicates whether any channels exist.
125 bool has_channels() const { 124 bool has_channels() const {
126 return (!voice_channels_.empty() || !video_channels_.empty()); 125 return (!voice_channels_.empty() || !video_channels_.empty());
127 } 126 }
128 127
129 // RTX will be enabled/disabled in engines that support it. The supporting 128 // RTX will be enabled/disabled in engines that support it. The supporting
130 // engines will start offering an RTX codec. Must be called before Init(). 129 // engines will start offering an RTX codec. Must be called before Init().
131 bool SetVideoRtxEnabled(bool enable); 130 bool SetVideoRtxEnabled(bool enable);
132 131
(...skipping 10 matching lines...) Expand all
143 // bytes. When the limit is reached, logging will stop and the file will be 142 // bytes. When the limit is reached, logging will stop and the file will be
144 // closed. If max_size_bytes is set to <= 0, no limit will be used. 143 // closed. If max_size_bytes is set to <= 0, no limit will be used.
145 bool StartAecDump(rtc::PlatformFile file, int64_t max_size_bytes); 144 bool StartAecDump(rtc::PlatformFile file, int64_t max_size_bytes);
146 145
147 // Stops recording AEC dump. 146 // Stops recording AEC dump.
148 void StopAecDump(); 147 void StopAecDump();
149 148
150 private: 149 private:
151 typedef std::vector<VoiceChannel*> VoiceChannels; 150 typedef std::vector<VoiceChannel*> VoiceChannels;
152 typedef std::vector<VideoChannel*> VideoChannels; 151 typedef std::vector<VideoChannel*> VideoChannels;
153 typedef std::vector<DataChannel*> DataChannels; 152 typedef std::vector<RtpDataChannel*> RtpDataChannels;
154 153
155 void Construct(MediaEngineInterface* me, 154 void Construct(MediaEngineInterface* me,
156 DataEngineInterface* dme, 155 DataEngineInterface* dme,
157 rtc::Thread* worker_thread, 156 rtc::Thread* worker_thread,
158 rtc::Thread* network_thread); 157 rtc::Thread* network_thread);
159 bool InitMediaEngine_w(); 158 bool InitMediaEngine_w();
160 void DestructorDeletes_w(); 159 void DestructorDeletes_w();
161 void Terminate_w(); 160 void Terminate_w();
162 bool SetCryptoOptions_w(const rtc::CryptoOptions& crypto_options); 161 bool SetCryptoOptions_w(const rtc::CryptoOptions& crypto_options);
163 VoiceChannel* CreateVoiceChannel_w( 162 VoiceChannel* CreateVoiceChannel_w(
164 webrtc::MediaControllerInterface* media_controller, 163 webrtc::MediaControllerInterface* media_controller,
165 TransportController* transport_controller, 164 TransportController* transport_controller,
166 const std::string& content_name, 165 const std::string& content_name,
167 const std::string* bundle_transport_name, 166 const std::string* bundle_transport_name,
168 bool rtcp, 167 bool rtcp,
169 bool srtp_required, 168 bool srtp_required,
170 const AudioOptions& options); 169 const AudioOptions& options);
171 void DestroyVoiceChannel_w(VoiceChannel* voice_channel); 170 void DestroyVoiceChannel_w(VoiceChannel* voice_channel);
172 VideoChannel* CreateVideoChannel_w( 171 VideoChannel* CreateVideoChannel_w(
173 webrtc::MediaControllerInterface* media_controller, 172 webrtc::MediaControllerInterface* media_controller,
174 TransportController* transport_controller, 173 TransportController* transport_controller,
175 const std::string& content_name, 174 const std::string& content_name,
176 const std::string* bundle_transport_name, 175 const std::string* bundle_transport_name,
177 bool rtcp, 176 bool rtcp,
178 bool srtp_required, 177 bool srtp_required,
179 const VideoOptions& options); 178 const VideoOptions& options);
180 void DestroyVideoChannel_w(VideoChannel* video_channel); 179 void DestroyVideoChannel_w(VideoChannel* video_channel);
181 DataChannel* CreateDataChannel_w( 180 RtpDataChannel* CreateRtpDataChannel_w(
182 webrtc::MediaControllerInterface* media_controller, 181 webrtc::MediaControllerInterface* media_controller,
183 TransportController* transport_controller, 182 TransportController* transport_controller,
184 const std::string& content_name, 183 const std::string& content_name,
185 const std::string* bundle_transport_name, 184 const std::string* bundle_transport_name,
186 bool rtcp, 185 bool rtcp,
187 bool srtp_required, 186 bool srtp_required);
188 DataChannelType data_channel_type); 187 void DestroyRtpDataChannel_w(RtpDataChannel* data_channel);
189 void DestroyDataChannel_w(DataChannel* data_channel);
190 188
191 std::unique_ptr<MediaEngineInterface> media_engine_; 189 std::unique_ptr<MediaEngineInterface> media_engine_;
192 std::unique_ptr<DataEngineInterface> data_media_engine_; 190 std::unique_ptr<DataEngineInterface> data_media_engine_;
193 bool initialized_; 191 bool initialized_;
194 rtc::Thread* main_thread_; 192 rtc::Thread* main_thread_;
195 rtc::Thread* worker_thread_; 193 rtc::Thread* worker_thread_;
196 rtc::Thread* network_thread_; 194 rtc::Thread* network_thread_;
197 195
198 VoiceChannels voice_channels_; 196 VoiceChannels voice_channels_;
199 VideoChannels video_channels_; 197 VideoChannels video_channels_;
200 DataChannels data_channels_; 198 RtpDataChannels data_channels_;
201 199
202 bool enable_rtx_; 200 bool enable_rtx_;
203 rtc::CryptoOptions crypto_options_; 201 rtc::CryptoOptions crypto_options_;
204 202
205 bool capturing_; 203 bool capturing_;
206 }; 204 };
207 205
208 } // namespace cricket 206 } // namespace cricket
209 207
210 #endif // WEBRTC_PC_CHANNELMANAGER_H_ 208 #endif // WEBRTC_PC_CHANNELMANAGER_H_
OLDNEW
« no previous file with comments | « webrtc/pc/channel_unittest.cc ('k') | webrtc/pc/channelmanager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698