diff -r 43e37759235e -r 51a74ef9ed63 Symbian3/SDK/Source/GUID-E56EB25C-9B94-5486-9492-5151FDF79B6C.dita --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Symbian3/SDK/Source/GUID-E56EB25C-9B94-5486-9492-5151FDF79B6C.dita Wed Mar 31 11:11:55 2010 +0100 @@ -0,0 +1,49 @@ + + + + + +Global +Surface Updates +

Global surface updates are surface updates that are submitted to all displays +rather than just one display. By using global surface updates, the Video Renderer +can update surfaces on all displays including ones that it is not aware of. +When the Video Renderer sends a global surface update, the update is broadcast +by the Graphics Surface +Update component to all Composition Implementations present in the +system. Each Composition Implementation determines whether the surface is +displayed on its associated screen and if so, forces an update. For more information, +see Global Surface +Updates in the Graphics Guide.

+

The Video Renderer registers and unregisters surfaces with the Window Server +for all available displays. When the client calls CVideoRenderer::CreateSurfaceL(), +the Video Renderer creates the surface and then registers it with each display. +When the client calls CVideoRenderer::DestroySurfaceL(), +the Video Renderer unregisters the surface with each display and then destroys +it. The following sequence diagram shows how the Video Renderer registers +and unregisters surfaces:

+ + Surface registration + + +

The Video Renderer uses the global constant KAllScreens (provided +by the Surface Update component) to ensure all displays are updated with new +data. The following sequence diagram shows the Video Renderer passing KAllScreens in +the call to RSurfaceUpdateSession::SubmitUpdate():

+ + Data flow between client, Video Renderer and Surface Update +client-side API + + +
+Video Renderer +Component +Graphics +Composition Collection +
\ No newline at end of file