Chromium Code Reviews

Side by Side Diff: services/media/framework_mojo/mojo_consumer.cc

Issue 1823833003: Take advantage of MojoGetBufferInformation (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff |
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/logging.h" 6 #include "base/logging.h"
7 #include "base/message_loop/message_loop.h" 7 #include "base/message_loop/message_loop.h"
8 #include "services/media/framework_mojo/mojo_consumer.h" 8 #include "services/media/framework_mojo/mojo_consumer.h"
9 9
10 namespace mojo { 10 namespace mojo {
(...skipping 19 matching lines...)
30 prime_requested_callback_ = callback; 30 prime_requested_callback_ = callback;
31 } 31 }
32 32
33 void MojoConsumer::SetFlushRequestedCallback( 33 void MojoConsumer::SetFlushRequestedCallback(
34 const FlushRequestedCallback& callback) { 34 const FlushRequestedCallback& callback) {
35 flush_requested_callback_ = callback; 35 flush_requested_callback_ = callback;
36 } 36 }
37 37
38 void MojoConsumer::SetBuffer( 38 void MojoConsumer::SetBuffer(
39 ScopedSharedBufferHandle buffer, 39 ScopedSharedBufferHandle buffer,
40 uint64_t size,
41 const SetBufferCallback& callback) { 40 const SetBufferCallback& callback) {
42 buffer_.InitFromHandle(buffer.Pass(), size); 41 buffer_.InitFromHandle(buffer.Pass());
43 callback.Run(); 42 callback.Run();
44 } 43 }
45 44
46 void MojoConsumer::SendPacket( 45 void MojoConsumer::SendPacket(
47 MediaPacketPtr media_packet, 46 MediaPacketPtr media_packet,
48 const SendPacketCallback& callback) { 47 const SendPacketCallback& callback) {
49 DCHECK(supply_callback_); 48 DCHECK(supply_callback_);
50 supply_callback_(PacketImpl::Create( 49 supply_callback_(PacketImpl::Create(
51 media_packet.Pass(), 50 media_packet.Pass(),
52 callback, 51 callback,
(...skipping 49 matching lines...)
102 void MojoConsumer::PacketImpl::RunCallback(const SendPacketCallback& callback) { 101 void MojoConsumer::PacketImpl::RunCallback(const SendPacketCallback& callback) {
103 callback.Run(MediaConsumer::SendResult::CONSUMED); 102 callback.Run(MediaConsumer::SendResult::CONSUMED);
104 } 103 }
105 104
106 void MojoConsumer::PacketImpl::Release() { 105 void MojoConsumer::PacketImpl::Release() {
107 // TODO(dalesat): Is there a cleaner way to do this? 106 // TODO(dalesat): Is there a cleaner way to do this?
108 task_runner_->PostTask(FROM_HERE, base::Bind(&RunCallback, callback_)); 107 task_runner_->PostTask(FROM_HERE, base::Bind(&RunCallback, callback_));
109 delete this; 108 delete this;
110 } 109 }
111 110
112 } // namespace media 111 } // namespace media
113 } // namespace mojo 112 } // namespace mojo
OLDNEW

Powered by Google App Engine