summaryrefslogtreecommitdiffstats
path: root/ppapi
diff options
context:
space:
mode:
authorlionel.g.landwerlin <lionel.g.landwerlin@intel.com>2015-10-23 11:01:38 -0700
committerCommit bot <commit-bot@chromium.org>2015-10-23 18:02:48 +0000
commite760327b968593accd7b3dccca59d23c6a365270 (patch)
tree36929ae7d88bcb733aecd9cad88cad1926a0f2a0 /ppapi
parentd7fc3ff56b09371be9e31f071863d4e51702838f (diff)
downloadchromium_src-e760327b968593accd7b3dccca59d23c6a365270.zip
chromium_src-e760327b968593accd7b3dccca59d23c6a365270.tar.gz
chromium_src-e760327b968593accd7b3dccca59d23c6a365270.tar.bz2
ppapi: MediaStreamBufferManager: add methods to query queued buffers
BUG=461222 Review URL: https://codereview.chromium.org/1418873003 Cr-Commit-Position: refs/heads/master@{#355825}
Diffstat (limited to 'ppapi')
-rw-r--r--ppapi/shared_impl/media_stream_buffer_manager.cc4
-rw-r--r--ppapi/shared_impl/media_stream_buffer_manager.h3
-rw-r--r--ppapi/shared_impl/media_stream_buffer_manager_unittest.cc2
3 files changed, 9 insertions, 0 deletions
diff --git a/ppapi/shared_impl/media_stream_buffer_manager.cc b/ppapi/shared_impl/media_stream_buffer_manager.cc
index 29bc153..a9e0e4f 100644
--- a/ppapi/shared_impl/media_stream_buffer_manager.cc
+++ b/ppapi/shared_impl/media_stream_buffer_manager.cc
@@ -72,6 +72,10 @@ void MediaStreamBufferManager::EnqueueBuffer(int32_t index) {
delegate_->OnNewBufferEnqueued();
}
+bool MediaStreamBufferManager::HasAvailableBuffer() {
+ return !buffer_queue_.empty();
+}
+
MediaStreamBuffer* MediaStreamBufferManager::GetBufferPointer(int32_t index) {
if (index < 0 || index >= number_of_buffers_)
return NULL;
diff --git a/ppapi/shared_impl/media_stream_buffer_manager.h b/ppapi/shared_impl/media_stream_buffer_manager.h
index 28d8e80..7633624 100644
--- a/ppapi/shared_impl/media_stream_buffer_manager.h
+++ b/ppapi/shared_impl/media_stream_buffer_manager.h
@@ -70,6 +70,9 @@ class PPAPI_SHARED_EXPORT MediaStreamBufferManager {
// Puts a buffer into |buffer_queue_|.
void EnqueueBuffer(int32_t index);
+ // Queries whether a buffer will be returned by DequeueBuffer().
+ bool HasAvailableBuffer();
+
// Gets the buffer address for the given buffer index.
MediaStreamBuffer* GetBufferPointer(int32_t index);
diff --git a/ppapi/shared_impl/media_stream_buffer_manager_unittest.cc b/ppapi/shared_impl/media_stream_buffer_manager_unittest.cc
index 3db0117..75c5660 100644
--- a/ppapi/shared_impl/media_stream_buffer_manager_unittest.cc
+++ b/ppapi/shared_impl/media_stream_buffer_manager_unittest.cc
@@ -56,6 +56,7 @@ TEST(MediaStreamBufferManager, General) {
EXPECT_EQ(kNumberOfBuffers, manager.number_of_buffers());
EXPECT_EQ(kBufferSize, manager.buffer_size());
+ EXPECT_TRUE(manager.HasAvailableBuffer());
// Test DequeueBuffer() and GetBufferPointer()
for (int32_t i = 0; i < kNumberOfBuffers; ++i) {
@@ -78,6 +79,7 @@ TEST(MediaStreamBufferManager, General) {
EXPECT_EQ(2, manager.DequeueBuffer());
EXPECT_EQ(PP_ERROR_FAILED, manager.DequeueBuffer());
EXPECT_EQ(PP_ERROR_FAILED, manager.DequeueBuffer());
+ EXPECT_FALSE(manager.HasAvailableBuffer());
// Returns NULL for invalid index to GetBufferPointer()
EXPECT_EQ(NULL, manager.GetBufferPointer(-1));