Hi Mathias, Android typically creates two buffers per surface. Presumably this is so that one of them can be locked by an application for rendering while the other (complete buffer) is available to SurfaceFlinger for compositing?
What kinds of surfaces would have only one associated buffer? Surface Buffer access is guarded by calls to Lock/Unlock(andPost) - there is another fcunction - nextBuffer which looks like it always returns data pertinent to the front buffer without effecting a lock. Are all accesses to buffers gated through either lockSurface (& corresponding unlock..) or nextBuffer? When is nextBuffer used as opposed to the lockSurface? (Seems like a misleading name). Does the information ultimately get conveyed to a GGLSurface object before any Android rendering is done? I also noticed a limit on the number of Layers a client can have (NUM_LAYERS_MAX), which is set to 31. Does this pose a problem for applications that for example use lots of UI type widgets? Also I guess 31 is used as a number just so that the control block stays smaller than 4k? Thanks, Fred. --~--~---------~--~----~------------~-------~--~----~ unsubscribe: [email protected] website: http://groups.google.com/group/android-porting -~----------~----~----~----~------~----~------~--~---
