8dc55396fc9bc425b5e2c82e76a38080f2a655ff |
|
04-Nov-2014 |
Dan Stoza <stoza@google.com> |
Add a BufferItem parameter to onFrameAvailable Passes the BufferItem for the queued buffer to the onFrameAvailable callback so the consumer can track the BufferQueue's contents. Also adds an onFrameReplaced callback, which is necessary if the consumer wants to do anything more than simple queue length tracking. Bug: 18111837 Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
99b18b447dec188bcec37b415603b9dd400fc7e1 |
|
28-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Add StreamSplitter Adds a StreamSplitter class, that takes one IGraphicBufferConsumer interface and multiple IGraphicBufferProducer interfaces and implements a one-to-many broadcast of GraphicBuffers (while managing fences correctly). Change-Id: I38ecdf3e311ac521bc781c30dde0cc382a4376a3
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
fd34b65f717b84fa06d8c37f41b070f41d0ad3a3 |
|
11-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Add producer buffer-released callback"
|
b3d0bdf0dbc19f0a0d7d924693025371e24828fd |
|
08-Apr-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Remove Bn version of create* It turns out that there's no reason to have both I* and Bn* versions of the createBufferQueue method, so I removed the Bn* version. Change-Id: I66aeb09e10458ae540ddf1f38d2d0154ea8f315b
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
f0eaf25e9247edf4d124bedaeb863f7abdf35a3e |
|
21-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Add producer buffer-released callback Add a callback to the producer side, onBufferReleased, which will be called every time the consumer releases a buffer back to the BufferQueue. This will enable a buffer stream splitter to work autonomously without having to block on dequeueBuffer. The binder object used for the callback replaces the generic IBinder token that was passed into IGraphicBufferProducer::connect to detect the death of the producer. If a producer does not wish to listen for buffer release events, it can pass in an instance of the DummyProducerListener class defined in IProducerListener.h, if it even cares about death events (BufferQueue doesn't enforce the token being non-NULL, though perhaps we should). Change-Id: I23935760673524abeafea2b58dccc3583b368710
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
1a0b8617909c94f6c7301b651cb7b07463529c8c |
|
20-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Test remote producer and consumer Adds a test that puts the BufferQueue into its own process and connects to it over remote binder interfaces. This exposed the fact that while IGBC was technically binderized, it didn't actually work when flattened, so this change also fixes that. Change-Id: I728cdb662a4273ddd3440ed6040a12560313fe68
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
49bfda1fbdf828a8ea63ae2c2fa25739f6e48527 |
|
13-Mar-2014 |
Jesse Hall <jessehall@google.com> |
Fix broken build for more tests Change-Id: I7bdd12a833233724805d01d993541ee05caa9bf6
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
9f3053de78630815d60cf48a2cf2348cc5867c45 |
|
07-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Allow detaching/reattaching buffers Adds detachBuffer and attachBuffer calls to both the producer and consumer sides of BufferQueue. Buffers may be detached while dequeued by the producer or acquired by the consumer, and when attached, enter the dequeued and acquired states, respectively. Bug: 13173343 Change-Id: Ic152692b0a94d99e0135b9bfa62747dab2a54220
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
2e336496c3b3b78910cf1c496e21dc4909ee32ad |
|
06-Mar-2014 |
Andy McFadden <fadden@android.com> |
FramebufferNativeWindow.h is obsolete This adds a deprecation #warning to the header. Change-Id: Ia32f16e491cb01d435ec8846dda3d9a7d1a9cfc5
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
7ea777f097784492f880623067becac1b276f884 |
|
19-Nov-2013 |
Igor Murashkin <iam@google.com> |
gui: Add tests for IGraphicBufferProducer * Basic tests only. Needs more complicated queue/dequeue tests. * Also needs consumer-side tests to really be thorough. Change-Id: I1099dd56d65b6e9dfa15377726d6054ce657c0ca
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
799f51268006f319f6ae538dca670bfc7f522688 |
|
18-Sep-2013 |
Mathias Agopian <mathias@google.com> |
Fix build (tests) Change-Id: I5b233ef448e5e7eec3818c6586dfea138b28f7b6
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
8b308ed70ed782f68c8075aac2a6b66bbfcdb9af |
|
19-Aug-2013 |
Andy McFadden <fadden@android.com> |
Fix build Neglected the "checkbuild"-built tests. Change-Id: I202692f1a6d1e306c88e820c959d07d16e7c6a00
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
a4e19521ac4563f2ff6517bcfd63d9b8d33a6d0b |
|
01-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Binderize the consumer side of BufferQueue While currently untested, this should allow to move the BuffereQueue in the consumer process and have everything work as usual. Bug: 9265647 Change-Id: I9ca8f099f7c65b9a27b7e7a3643b46d1b58eacfc
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
7cdd786fa80cf03551291ae8feca7b77583be1c5 |
|
19-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Make ANW.setSwapInterval(0) work again we can now queue/dequeue a buffer in asynchrnous mode by using the async parameter to these calls. async mode is only specified with those calls (it is not modal anymore). as a consequence it can only be specified when the buffer count is not overidden, as error is returned otherwise. Change-Id: Ic63f4f96f671cb9d65c4cecbcc192615e09a8b6b
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
595264f1af12e25dce57d7c5b1d52ed86ac0d0c9 |
|
17-Jul-2013 |
Mathias Agopian <mathias@google.com> |
BufferQueue improvements and APIs changes this is the first step of a series of improvements to BufferQueue. A few things happen in this change: - setSynchronousMode() goes away as well as the SynchronousModeAllowed flag - BufferQueue now defaults to (what used to be) synchronous mode - a new "controlled by app" flag is passed when creating consumers and producers those flags are used to put the BufferQueue in a mode where it will never block if both flags are set. This is achieved by: - returning an error from dequeueBuffer() if it would block - making sure a buffer is always available by replacing the previous buffer with the new one in queueBuffer() (note: this is similar to what asynchrnous mode used to be) Note: in this change EGL's swap-interval 0 is broken; this will be fixed in another change. Change-Id: I691f9507d6e2e158287e3039f2a79a4d4434211d
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
1585c4d9fbbba3ba70ae625923b85cd02cb8a0fd |
|
28-Jun-2013 |
Andy McFadden <fadden@android.com> |
Pay attention to buffer timestamps When acquiring a buffer, SurfaceFlinger now computes the expected presentation time and passes it to the BufferQueue acquireBuffer() method. If it's not yet time to display the buffer, acquireBuffer() returns PRESENT_LATER instead of a buffer. The current implementation of the expected-present-time computation uses approximations and guesswork. Bug 7900302 Change-Id: If9345611c5983a11a811935aaf27d6388a5036f1
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
4c00cc11141da7d159eb2323b186ed344115c0f1 |
|
16-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Fix argument types in IGraphicBufferProducer methods Bug: 8384764 Change-Id: I7a3f1e1a0584a70af04f9eafef900505389d2202
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
1df8c345854155cbbcb9f80de9d12d66ea70ac08 |
|
20-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: disallow NULL Fence pointers This change eliminates the uses of a NULL sp<Fence> indicating that no waiting is required. Instead we use a non-NULL but invalid Fence object for which the wait methods will return immediately. Bug: 7892871 Change-Id: I5360aebe3090422ef6920d56c99fc4eedc642e48
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
2adaf04fab35cf47c824d74d901b54094e01ccd3 |
|
18-Dec-2012 |
Andy McFadden <fadden@android.com> |
Rename ISurfaceTexture and SurfaceTexture The C++ class names don't match what the classes do, so rename ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to GLConsumer. Bug 7736700 Change-Id: Ia03e468888025b5cae3c0ee1995434515dbea387
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
c68f2ecfa02037144d1a3856f637a77f523cf416 |
|
31-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: add a setMaxAcquiredBufferCount check This change adds a check to verify the validity of the value passed to setMaxAcquiredBufferCount. Change-Id: I39730557aa58261e678bd6e4fce11bab78e98362
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|
9e75ddda93888755d0b14144b62e896cd9f78f3a |
|
01-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: add BufferQueue test infrastructure This change adds some infrastructure for testing the BufferQueue class. It also includes a test that tests the new check in BufferQueue::acquireBuffer that prevents the consumer from acquiring more than one buffer beyond the max acquired buffer count that was set. Change-Id: I38554ad3f9a53d2ddeba7ef0deee35ec2e2f9775
/frameworks/native/libs/gui/tests/BufferQueue_test.cpp
|