BufferItemConsumer: Use IGBC instead of BQ
Change-Id: Id1756ac62954ba412f2c23c5fa6e5d760c299347
diff --git a/libs/gui/BufferItemConsumer.cpp b/libs/gui/BufferItemConsumer.cpp
index 74a65ed..fe50c55 100644
--- a/libs/gui/BufferItemConsumer.cpp
+++ b/libs/gui/BufferItemConsumer.cpp
@@ -29,19 +29,19 @@
namespace android {
-BufferItemConsumer::BufferItemConsumer(const sp<BufferQueue>& bq,
- uint32_t consumerUsage, int bufferCount, bool controlledByApp) :
- ConsumerBase(bq, controlledByApp)
+BufferItemConsumer::BufferItemConsumer(
+ const sp<IGraphicBufferConsumer>& consumer, uint32_t consumerUsage,
+ int bufferCount, bool controlledByApp) :
+ ConsumerBase(consumer, controlledByApp)
{
- if (bufferCount == MIN_UNDEQUEUED_BUFFERS) {
- status_t res;
- res = bq->query(NATIVE_WINDOW_MIN_UNDEQUEUED_BUFFERS, &bufferCount);
- LOG_ALWAYS_FATAL_IF(res != OK || bufferCount < 0,
- "Failed to query min buffer count");
+ status_t err = mConsumer->setConsumerUsageBits(consumerUsage);
+ LOG_ALWAYS_FATAL_IF(err != OK,
+ "Failed to set consumer usage bits to %#x", consumerUsage);
+ if (bufferCount != DEFAULT_MAX_BUFFERS) {
+ err = mConsumer->setMaxAcquiredBufferCount(bufferCount);
+ LOG_ALWAYS_FATAL_IF(err != OK,
+ "Failed to set max acquired buffer count to %d", bufferCount);
}
-
- mConsumer->setConsumerUsageBits(consumerUsage);
- mConsumer->setMaxAcquiredBufferCount(bufferCount);
}
BufferItemConsumer::~BufferItemConsumer() {