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

Side by Side Diff: content/renderer/media/video_capture_impl.cc

Issue 16294003: Update content/ to use scoped_refptr<T>::get() rather than implicit "operator T*" (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebased Created 7 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/media/video_capture_impl.h" 5 #include "content/renderer/media/video_capture_impl.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/stl_util.h" 8 #include "base/stl_util.h"
9 #include "content/common/child_process.h" 9 #include "content/common/child_process.h"
10 #include "content/common/media/video_capture_messages.h" 10 #include "content/common/media/video_capture_messages.h"
(...skipping 220 matching lines...) Expand 10 before | Expand all | Expand 10 after
231 StopDevice(); 231 StopDevice();
232 } 232 }
233 } 233 }
234 234
235 void VideoCaptureImpl::DoFeedBufferOnCaptureThread( 235 void VideoCaptureImpl::DoFeedBufferOnCaptureThread(
236 scoped_refptr<VideoFrameBuffer> buffer) { 236 scoped_refptr<VideoFrameBuffer> buffer) {
237 DCHECK(capture_message_loop_proxy_->BelongsToCurrentThread()); 237 DCHECK(capture_message_loop_proxy_->BelongsToCurrentThread());
238 238
239 CachedDIB::iterator it; 239 CachedDIB::iterator it;
240 for (it = cached_dibs_.begin(); it != cached_dibs_.end(); ++it) { 240 for (it = cached_dibs_.begin(); it != cached_dibs_.end(); ++it) {
241 if (buffer == it->second->mapped_memory) 241 if (buffer.get() == it->second->mapped_memory.get())
242 break; 242 break;
243 } 243 }
244 244
245 if (it != cached_dibs_.end() && it->second) { 245 if (it != cached_dibs_.end() && it->second) {
246 DCHECK_GT(it->second->references, 0); 246 DCHECK_GT(it->second->references, 0);
247 --it->second->references; 247 --it->second->references;
248 if (it->second->references == 0) { 248 if (it->second->references == 0) {
249 Send(new VideoCaptureHostMsg_BufferReady(device_id_, it->first)); 249 Send(new VideoCaptureHostMsg_BufferReady(device_id_, it->first));
250 } 250 }
251 } 251 }
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after
285 int buffer_id, base::Time timestamp) { 285 int buffer_id, base::Time timestamp) {
286 DCHECK(capture_message_loop_proxy_->BelongsToCurrentThread()); 286 DCHECK(capture_message_loop_proxy_->BelongsToCurrentThread());
287 287
288 if (state_ != VIDEO_CAPTURE_STATE_STARTED || suspended_) { 288 if (state_ != VIDEO_CAPTURE_STATE_STARTED || suspended_) {
289 Send(new VideoCaptureHostMsg_BufferReady(device_id_, buffer_id)); 289 Send(new VideoCaptureHostMsg_BufferReady(device_id_, buffer_id));
290 return; 290 return;
291 } 291 }
292 292
293 media::VideoCapture::VideoFrameBuffer* buffer; 293 media::VideoCapture::VideoFrameBuffer* buffer;
294 DCHECK(cached_dibs_.find(buffer_id) != cached_dibs_.end()); 294 DCHECK(cached_dibs_.find(buffer_id) != cached_dibs_.end());
295 buffer = cached_dibs_[buffer_id]->mapped_memory; 295 buffer = cached_dibs_[buffer_id]->mapped_memory.get();
296 buffer->timestamp = timestamp; 296 buffer->timestamp = timestamp;
297 297
298 for (ClientInfo::iterator it = clients_.begin(); it != clients_.end(); ++it) { 298 for (ClientInfo::iterator it = clients_.begin(); it != clients_.end(); ++it) {
299 it->first->OnBufferReady(this, buffer); 299 it->first->OnBufferReady(this, buffer);
300 } 300 }
301 cached_dibs_[buffer_id]->references = clients_.size(); 301 cached_dibs_[buffer_id]->references = clients_.size();
302 } 302 }
303 303
304 void VideoCaptureImpl::DoStateChangedOnCaptureThread(VideoCaptureState state) { 304 void VideoCaptureImpl::DoStateChangedOnCaptureThread(VideoCaptureState state) {
305 DCHECK(capture_message_loop_proxy_->BelongsToCurrentThread()); 305 DCHECK(capture_message_loop_proxy_->BelongsToCurrentThread());
(...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after
461 if (it != clients->end()) { 461 if (it != clients->end()) {
462 handler->OnStopped(this); 462 handler->OnStopped(this);
463 handler->OnRemoved(this); 463 handler->OnRemoved(this);
464 clients->erase(it); 464 clients->erase(it);
465 found = true; 465 found = true;
466 } 466 }
467 return found; 467 return found;
468 } 468 }
469 469
470 } // namespace content 470 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/rtc_video_renderer.cc ('k') | content/renderer/media/video_capture_impl_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698