replicant-frameworks_native/libs/gui
Eric Penner 5c3d243fcc GLProducer: Reference count images rather than buffers.
In most cases, EGLImages can be created one-to-one with graphic
buffers in slots, but that was difficult due to some special
cases:
- ReleaseTexImage binds a custom 'unslotted' debug image.
- When all slots are freed, we still need to hang on to one.

These cases were handled by keeping an additional reference to
the 'current' buffer (mCurrentTextureBuf), but we would create
new images since we can't reference count them in the same way.
This patch uses the same semantics, except that it reference
counts the image (an EglImage wrapper class) rather than just
buffer. The wrapper class also detects the cases when we need
a new EGLImage, and only creates them in those rare cases.

Change-Id: I2915761dbe49d2a9bda1f59e60f857543634636b
2014-07-21 18:16:12 -07:00
..
tests GLConsumer: Stop using default constructor params 2014-06-24 13:09:19 -07:00
Android.mk
BitTube.cpp libgui: 64-bit compile issues 2014-06-09 14:27:45 -07:00
BufferItem.cpp
BufferItemConsumer.cpp
BufferQueue.cpp
BufferQueueConsumer.cpp libgui: 64 bit compile issues (part deux) 2014-06-09 15:42:26 -07:00
BufferQueueCore.cpp libgui: 64 bit compile issues (part deux) 2014-06-09 15:42:26 -07:00
BufferQueueProducer.cpp Add sticky transform to surfaceflinger. 2014-07-14 22:14:32 +00:00
BufferSlot.cpp
CleanSpec.mk
ConsumerBase.cpp am 72676e7d: am 0e1313cd: Merge "libgui: 64-bit compile issues" 2014-06-11 17:44:52 +00:00
CpuConsumer.cpp
DisplayEventReceiver.cpp
GLConsumer.cpp GLProducer: Reference count images rather than buffers. 2014-07-21 18:16:12 -07:00
GraphicBufferAlloc.cpp
GuiConfig.cpp
IConsumerListener.cpp
IDisplayEventConnection.cpp
IGraphicBufferAlloc.cpp
IGraphicBufferConsumer.cpp
IGraphicBufferProducer.cpp Add sticky transform to surfaceflinger. 2014-07-14 22:14:32 +00:00
IProducerListener.cpp
ISensorEventConnection.cpp Enable wakeup sensors. 2014-04-23 14:38:56 -07:00
ISensorServer.cpp
ISurfaceComposer.cpp surfaceflinger: Replace blank/unblank with setPowerMode 2014-06-05 16:35:52 -07:00
ISurfaceComposerClient.cpp
LayerState.cpp
Sensor.cpp Surface reportingMode for Sensors. 2014-06-12 14:49:41 -07:00
SensorEventQueue.cpp Enable wakeup sensors. 2014-04-23 14:38:56 -07:00
SensorManager.cpp
StreamSplitter.cpp libgui: 64 bit compile issues (part deux) 2014-06-09 15:42:26 -07:00
Surface.cpp Add sticky transform to surfaceflinger. 2014-07-14 22:14:32 +00:00
SurfaceComposerClient.cpp surfaceflinger: Replace blank/unblank with setPowerMode 2014-06-05 16:35:52 -07:00
SurfaceControl.cpp
SyncFeatures.cpp