Loading libs/nativedisplay/include/surfacetexture/SurfaceTexture.h +3 −2 Original line number Diff line number Diff line Loading @@ -272,10 +272,11 @@ public: status_t attachToContext(uint32_t tex); sp<GraphicBuffer> dequeueBuffer(int* outSlotid, android_dataspace* outDataspace, float* outTransformMatrix, bool* outQueueEmpty, bool* outQueueEmpty, SurfaceTexture_createReleaseFence createFence, SurfaceTexture_fenceWait fenceWait, void* fencePassThroughHandle); void* fencePassThroughHandle, ARect* cropRect, uint32_t* transform); /** * takeConsumerOwnership attaches a SurfaceTexture that is currently in the Loading libs/nativedisplay/include/surfacetexture/surface_texture_platform.h +3 −3 Original line number Diff line number Diff line Loading @@ -83,11 +83,11 @@ typedef int (*ASurfaceTexture_fenceWait)(int fence, void* fencePassThroughHandle * AHardwareBuffer_release. */ AHardwareBuffer* ASurfaceTexture_dequeueBuffer(ASurfaceTexture* st, int* outSlotid, android_dataspace* outDataspace, float* outTransformMatrix, bool* outNewContent, android_dataspace* outDataspace, bool* outNewContent, ASurfaceTexture_createReleaseFence createFence, ASurfaceTexture_fenceWait fenceWait, void* fencePassThroughHandle); void* fencePassThroughHandle, ARect* cropRect, uint32_t* transform); } // namespace android Loading libs/nativedisplay/surfacetexture/SurfaceTexture.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -464,10 +464,11 @@ void SurfaceTexture::dumpLocked(String8& result, const char* prefix) const { } sp<GraphicBuffer> SurfaceTexture::dequeueBuffer(int* outSlotid, android_dataspace* outDataspace, float* outTransformMatrix, bool* outQueueEmpty, bool* outQueueEmpty, SurfaceTexture_createReleaseFence createFence, SurfaceTexture_fenceWait fenceWait, void* fencePassThroughHandle) { void* fencePassThroughHandle, ARect* cropRect, uint32_t* transform) { Mutex::Autolock _l(mMutex); sp<GraphicBuffer> buffer; Loading @@ -483,7 +484,8 @@ sp<GraphicBuffer> SurfaceTexture::dequeueBuffer(int* outSlotid, android_dataspac buffer = mImageConsumer.dequeueBuffer(outSlotid, outDataspace, outQueueEmpty, *this, createFence, fenceWait, fencePassThroughHandle); memcpy(outTransformMatrix, mCurrentTransformMatrix, sizeof(mCurrentTransformMatrix)); *transform = mCurrentTransform; *cropRect = mCurrentCrop; return buffer; } Loading libs/nativedisplay/surfacetexture/surface_texture.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -193,16 +193,16 @@ void ASurfaceTexture_releaseConsumerOwnership(ASurfaceTexture* texture) { } AHardwareBuffer* ASurfaceTexture_dequeueBuffer(ASurfaceTexture* st, int* outSlotid, android_dataspace* outDataspace, float* outTransformMatrix, bool* outNewContent, android_dataspace* outDataspace, bool* outNewContent, ASurfaceTexture_createReleaseFence createFence, ASurfaceTexture_fenceWait fenceWait, void* handle) { ASurfaceTexture_fenceWait fenceWait, void* handle, ARect* cropRect, uint32_t* transform) { sp<GraphicBuffer> buffer; *outNewContent = false; bool queueEmpty; do { buffer = st->consumer->dequeueBuffer(outSlotid, outDataspace, outTransformMatrix, &queueEmpty, createFence, fenceWait, handle); buffer = st->consumer->dequeueBuffer(outSlotid, outDataspace, &queueEmpty, createFence, fenceWait, handle, cropRect, transform); if (!queueEmpty) { *outNewContent = true; } Loading Loading
libs/nativedisplay/include/surfacetexture/SurfaceTexture.h +3 −2 Original line number Diff line number Diff line Loading @@ -272,10 +272,11 @@ public: status_t attachToContext(uint32_t tex); sp<GraphicBuffer> dequeueBuffer(int* outSlotid, android_dataspace* outDataspace, float* outTransformMatrix, bool* outQueueEmpty, bool* outQueueEmpty, SurfaceTexture_createReleaseFence createFence, SurfaceTexture_fenceWait fenceWait, void* fencePassThroughHandle); void* fencePassThroughHandle, ARect* cropRect, uint32_t* transform); /** * takeConsumerOwnership attaches a SurfaceTexture that is currently in the Loading
libs/nativedisplay/include/surfacetexture/surface_texture_platform.h +3 −3 Original line number Diff line number Diff line Loading @@ -83,11 +83,11 @@ typedef int (*ASurfaceTexture_fenceWait)(int fence, void* fencePassThroughHandle * AHardwareBuffer_release. */ AHardwareBuffer* ASurfaceTexture_dequeueBuffer(ASurfaceTexture* st, int* outSlotid, android_dataspace* outDataspace, float* outTransformMatrix, bool* outNewContent, android_dataspace* outDataspace, bool* outNewContent, ASurfaceTexture_createReleaseFence createFence, ASurfaceTexture_fenceWait fenceWait, void* fencePassThroughHandle); void* fencePassThroughHandle, ARect* cropRect, uint32_t* transform); } // namespace android Loading
libs/nativedisplay/surfacetexture/SurfaceTexture.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -464,10 +464,11 @@ void SurfaceTexture::dumpLocked(String8& result, const char* prefix) const { } sp<GraphicBuffer> SurfaceTexture::dequeueBuffer(int* outSlotid, android_dataspace* outDataspace, float* outTransformMatrix, bool* outQueueEmpty, bool* outQueueEmpty, SurfaceTexture_createReleaseFence createFence, SurfaceTexture_fenceWait fenceWait, void* fencePassThroughHandle) { void* fencePassThroughHandle, ARect* cropRect, uint32_t* transform) { Mutex::Autolock _l(mMutex); sp<GraphicBuffer> buffer; Loading @@ -483,7 +484,8 @@ sp<GraphicBuffer> SurfaceTexture::dequeueBuffer(int* outSlotid, android_dataspac buffer = mImageConsumer.dequeueBuffer(outSlotid, outDataspace, outQueueEmpty, *this, createFence, fenceWait, fencePassThroughHandle); memcpy(outTransformMatrix, mCurrentTransformMatrix, sizeof(mCurrentTransformMatrix)); *transform = mCurrentTransform; *cropRect = mCurrentCrop; return buffer; } Loading
libs/nativedisplay/surfacetexture/surface_texture.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -193,16 +193,16 @@ void ASurfaceTexture_releaseConsumerOwnership(ASurfaceTexture* texture) { } AHardwareBuffer* ASurfaceTexture_dequeueBuffer(ASurfaceTexture* st, int* outSlotid, android_dataspace* outDataspace, float* outTransformMatrix, bool* outNewContent, android_dataspace* outDataspace, bool* outNewContent, ASurfaceTexture_createReleaseFence createFence, ASurfaceTexture_fenceWait fenceWait, void* handle) { ASurfaceTexture_fenceWait fenceWait, void* handle, ARect* cropRect, uint32_t* transform) { sp<GraphicBuffer> buffer; *outNewContent = false; bool queueEmpty; do { buffer = st->consumer->dequeueBuffer(outSlotid, outDataspace, outTransformMatrix, &queueEmpty, createFence, fenceWait, handle); buffer = st->consumer->dequeueBuffer(outSlotid, outDataspace, &queueEmpty, createFence, fenceWait, handle, cropRect, transform); if (!queueEmpty) { *outNewContent = true; } Loading