Make dataspace accessible to surface flinger
http://b/29940137
Keep track of dataspace in GLConsumer and make it
available to surfaceflinger's Layer class.
Test: TBD
Change-Id: I099dc6d8424909c5fc31bfe2d05a656695c4251b
diff --git a/libs/gui/GLConsumer.cpp b/libs/gui/GLConsumer.cpp
index fea9df7..b11a3e5 100644
--- a/libs/gui/GLConsumer.cpp
+++ b/libs/gui/GLConsumer.cpp
@@ -157,6 +157,7 @@
mCurrentScalingMode(NATIVE_WINDOW_SCALING_MODE_FREEZE),
mCurrentFence(Fence::NO_FENCE),
mCurrentTimestamp(0),
+ mCurrentDataSpace(HAL_DATASPACE_UNKNOWN),
mCurrentFrameNumber(0),
mDefaultWidth(1),
mDefaultHeight(1),
@@ -185,6 +186,7 @@
mCurrentScalingMode(NATIVE_WINDOW_SCALING_MODE_FREEZE),
mCurrentFence(Fence::NO_FENCE),
mCurrentTimestamp(0),
+ mCurrentDataSpace(HAL_DATASPACE_UNKNOWN),
mCurrentFrameNumber(0),
mDefaultWidth(1),
mDefaultHeight(1),
@@ -321,6 +323,7 @@
mCurrentCrop.makeInvalid();
mCurrentTransform = 0;
mCurrentTimestamp = 0;
+ mCurrentDataSpace = HAL_DATASPACE_UNKNOWN;
mCurrentFence = Fence::NO_FENCE;
mCurrentFenceTime = FenceTime::NO_FENCE;
@@ -488,6 +491,7 @@
mCurrentTransform = item.mTransform;
mCurrentScalingMode = item.mScalingMode;
mCurrentTimestamp = item.mTimestamp;
+ mCurrentDataSpace = item.mDataSpace;
mCurrentFence = item.mFence;
mCurrentFenceTime = item.mFenceTime;
mCurrentFrameNumber = item.mFrameNumber;
@@ -914,6 +918,12 @@
return mCurrentTimestamp;
}
+android_dataspace GLConsumer::getCurrentDataSpace() {
+ GLC_LOGV("getCurrentDataSpace");
+ Mutex::Autolock lock(mMutex);
+ return mCurrentDataSpace;
+}
+
uint64_t GLConsumer::getFrameNumber() {
GLC_LOGV("getFrameNumber");
Mutex::Autolock lock(mMutex);