summaryrefslogtreecommitdiff
path: root/libs/gui/CpuConsumer.cpp
diff options
context:
space:
mode:
author Eino-Ville Talvala <etalvala@google.com> 2015-02-19 16:10:43 -0800
committer Dan Stoza <stoza@google.com> 2015-04-07 11:11:43 -0700
commit1c2001efcf56d7f65242249fa4e5833f03a68e37 (patch)
tree79227b4adfac5c3aa4d7ef31bcfce17acc42acf0 /libs/gui/CpuConsumer.cpp
parent2d4cf62a2cdfbfbbca5757eb7dd1498d118bf7c9 (diff)
Cherry-pick dataSpace and BufferItem changes
Add dataSpace to buffer queues; remove old format enums. (cherry picked from commit 82c6bcc9705eabcaf5b9e45bc81867b0e2d61a02) libgui: Prepare for IGBC::BufferItem removal (cherry picked from commit cf3834db104e0b052056e3a06d46e3f222f0d372) SurfaceFlinger: Stop using IGBC::BufferItem (cherry picked from commit 11611f9be590480d7ea27bf0153558573ddcded2) Change-Id: Ic2e4770b916d2d1477e5ce98c4b49a0072ea03ff (cherry picked from commit 6c450101753d0219b151e79007bcded1bfbb058b)
Diffstat (limited to 'libs/gui/CpuConsumer.cpp')
-rw-r--r--libs/gui/CpuConsumer.cpp15
1 files changed, 11 insertions, 4 deletions
diff --git a/libs/gui/CpuConsumer.cpp b/libs/gui/CpuConsumer.cpp
index 73d34eb6ee..eb39469b0c 100644
--- a/libs/gui/CpuConsumer.cpp
+++ b/libs/gui/CpuConsumer.cpp
@@ -20,6 +20,7 @@
#include <cutils/compiler.h>
#include <utils/Log.h>
+#include <gui/BufferItem.h>
#include <gui/CpuConsumer.h>
#define CC_LOGV(x, ...) ALOGV("[%s] " x, mName.string(), ##__VA_ARGS__)
@@ -67,6 +68,13 @@ status_t CpuConsumer::setDefaultBufferFormat(PixelFormat defaultFormat)
return mConsumer->setDefaultBufferFormat(defaultFormat);
}
+status_t CpuConsumer::setDefaultBufferDataSpace(
+ android_dataspace defaultDataSpace)
+{
+ Mutex::Autolock _l(mMutex);
+ return mConsumer->setDefaultBufferDataSpace(defaultDataSpace);
+}
+
static bool isPossiblyYUV(PixelFormat format) {
switch (static_cast<int>(format)) {
case HAL_PIXEL_FORMAT_RGBA_8888:
@@ -74,11 +82,9 @@ static bool isPossiblyYUV(PixelFormat format) {
case HAL_PIXEL_FORMAT_RGB_888:
case HAL_PIXEL_FORMAT_RGB_565:
case HAL_PIXEL_FORMAT_BGRA_8888:
- case HAL_PIXEL_FORMAT_sRGB_A_8888:
- case HAL_PIXEL_FORMAT_sRGB_X_8888:
case HAL_PIXEL_FORMAT_Y8:
case HAL_PIXEL_FORMAT_Y16:
- case HAL_PIXEL_FORMAT_RAW16: // same as HAL_PIXEL_FORMAT_RAW_SENSOR
+ case HAL_PIXEL_FORMAT_RAW16:
case HAL_PIXEL_FORMAT_RAW10:
case HAL_PIXEL_FORMAT_RAW_OPAQUE:
case HAL_PIXEL_FORMAT_BLOB:
@@ -105,7 +111,7 @@ status_t CpuConsumer::lockNextBuffer(LockedBuffer *nativeBuffer) {
return NOT_ENOUGH_DATA;
}
- BufferQueue::BufferItem b;
+ BufferItem b;
Mutex::Autolock _l(mMutex);
@@ -200,6 +206,7 @@ status_t CpuConsumer::lockNextBuffer(LockedBuffer *nativeBuffer) {
nativeBuffer->transform = b.mTransform;
nativeBuffer->scalingMode = b.mScalingMode;
nativeBuffer->timestamp = b.mTimestamp;
+ nativeBuffer->dataSpace = b.mDataSpace;
nativeBuffer->frameNumber = b.mFrameNumber;
nativeBuffer->dataCb = reinterpret_cast<uint8_t*>(ycbcr.cb);