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

Side by Side Diff: media/mojo/services/demuxer_stream_provider_shim.cc

Issue 1544313002: Convert Pass()→std::move() in //media (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 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 | « media/midi/midi_manager_usb_unittest.cc ('k') | media/mojo/services/media_apptest.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 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "media/mojo/services/demuxer_stream_provider_shim.h" 5 #include "media/mojo/services/demuxer_stream_provider_shim.h"
6 6
7 #include <utility>
8
7 #include "base/bind.h" 9 #include "base/bind.h"
8 #include "base/bind_helpers.h" 10 #include "base/bind_helpers.h"
9 #include "base/callback_helpers.h" 11 #include "base/callback_helpers.h"
10 12
11 namespace media { 13 namespace media {
12 14
13 DemuxerStreamProviderShim::DemuxerStreamProviderShim( 15 DemuxerStreamProviderShim::DemuxerStreamProviderShim(
14 interfaces::DemuxerStreamPtr audio, 16 interfaces::DemuxerStreamPtr audio,
15 interfaces::DemuxerStreamPtr video, 17 interfaces::DemuxerStreamPtr video,
16 const base::Closure& demuxer_ready_cb) 18 const base::Closure& demuxer_ready_cb)
17 : demuxer_ready_cb_(demuxer_ready_cb), 19 : demuxer_ready_cb_(demuxer_ready_cb),
18 streams_ready_(0), 20 streams_ready_(0),
19 weak_factory_(this) { 21 weak_factory_(this) {
20 DCHECK(audio || video); 22 DCHECK(audio || video);
21 DCHECK(!demuxer_ready_cb_.is_null()); 23 DCHECK(!demuxer_ready_cb_.is_null());
22 24
23 if (audio) { 25 if (audio) {
24 streams_.push_back(new MojoDemuxerStreamAdapter( 26 streams_.push_back(new MojoDemuxerStreamAdapter(
25 audio.Pass(), 27 std::move(audio), base::Bind(&DemuxerStreamProviderShim::OnStreamReady,
26 base::Bind(&DemuxerStreamProviderShim::OnStreamReady, 28 weak_factory_.GetWeakPtr())));
27 weak_factory_.GetWeakPtr())));
28 } 29 }
29 30
30 if (video) { 31 if (video) {
31 streams_.push_back(new MojoDemuxerStreamAdapter( 32 streams_.push_back(new MojoDemuxerStreamAdapter(
32 video.Pass(), 33 std::move(video), base::Bind(&DemuxerStreamProviderShim::OnStreamReady,
33 base::Bind(&DemuxerStreamProviderShim::OnStreamReady, 34 weak_factory_.GetWeakPtr())));
34 weak_factory_.GetWeakPtr())));
35 } 35 }
36 } 36 }
37 37
38 DemuxerStreamProviderShim::~DemuxerStreamProviderShim() { 38 DemuxerStreamProviderShim::~DemuxerStreamProviderShim() {
39 } 39 }
40 40
41 DemuxerStream* DemuxerStreamProviderShim::GetStream(DemuxerStream::Type type) { 41 DemuxerStream* DemuxerStreamProviderShim::GetStream(DemuxerStream::Type type) {
42 DCHECK(demuxer_ready_cb_.is_null()); 42 DCHECK(demuxer_ready_cb_.is_null());
43 for (auto* stream : streams_) { 43 for (auto* stream : streams_) {
44 if (stream->type() == type) 44 if (stream->type() == type)
45 return stream; 45 return stream;
46 } 46 }
47 47
48 return nullptr; 48 return nullptr;
49 } 49 }
50 50
51 void DemuxerStreamProviderShim::OnStreamReady() { 51 void DemuxerStreamProviderShim::OnStreamReady() {
52 if (++streams_ready_ == streams_.size()) 52 if (++streams_ready_ == streams_.size())
53 base::ResetAndReturn(&demuxer_ready_cb_).Run(); 53 base::ResetAndReturn(&demuxer_ready_cb_).Run();
54 } 54 }
55 55
56 } // namespace media 56 } // namespace media
OLDNEW
« no previous file with comments | « media/midi/midi_manager_usb_unittest.cc ('k') | media/mojo/services/media_apptest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698