OLD | NEW |
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...) Loading... |
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...) Loading... |
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 |
OLD | NEW |