equal
deleted
inserted
replaced
17 audience</b>: Device creators. </p> |
17 audience</b>: Device creators. </p> |
18 <p>The following diagram provides a simplified representation of the upper |
18 <p>The following diagram provides a simplified representation of the upper |
19 and lower loops. </p> |
19 and lower loops. </p> |
20 <fig id="GUID-9CC782B3-568B-56A4-9AF7-0E2D4EABD7A7"> |
20 <fig id="GUID-9CC782B3-568B-56A4-9AF7-0E2D4EABD7A7"> |
21 <title>The Window Server's upper and lower rendering loops</title> |
21 <title>The Window Server's upper and lower rendering loops</title> |
22 <image href="GUID-9045FC43-162E-52B8-ABE2-5EC1EC88BD99_d0e201270_href.png" placement="inline"/> |
22 <image href="GUID-9045FC43-162E-52B8-ABE2-5EC1EC88BD99_d0e196262_href.png" placement="inline"/> |
23 </fig> |
23 </fig> |
24 <p> </p> |
24 <p> </p> |
25 <p>The <b>upper loop</b> is the process by which the Window Server’s scene |
25 <p>The <b>upper loop</b> is the process by which the Window Server’s scene |
26 state information is updated based on commands from the client. There are |
26 state information is updated based on commands from the client. There are |
27 two types of scene state updates: window tree updates (such as when a window |
27 two types of scene state updates: window tree updates (such as when a window |
41 that are used most frequently are <codeph>DrawBitmap()</codeph> and <codeph>BitBlt()</codeph>, |
41 that are used most frequently are <codeph>DrawBitmap()</codeph> and <codeph>BitBlt()</codeph>, |
42 for drawing a skin bitmap as a background, and <codeph>DrawText()</codeph>. </p> </li> |
42 for drawing a skin bitmap as a background, and <codeph>DrawText()</codeph>. </p> </li> |
43 </ul> |
43 </ul> |
44 <fig id="GUID-7103B894-51DE-5051-899F-F1FF2BD0749E"> |
44 <fig id="GUID-7103B894-51DE-5051-899F-F1FF2BD0749E"> |
45 <title>The main participants in the ScreenPlay Window Server rendering loop</title> |
45 <title>The main participants in the ScreenPlay Window Server rendering loop</title> |
46 <image href="GUID-3D110AD3-C5C7-533C-8E57-C4E3D032A229_d0e201332_href.png" placement="inline"/> |
46 <image href="GUID-3D110AD3-C5C7-533C-8E57-C4E3D032A229_d0e196324_href.png" placement="inline"/> |
47 </fig> |
47 </fig> |
48 <p>On the client side, <codeph>RWindow</codeph> and <codeph>CWindowGc</codeph> commands |
48 <p>On the client side, <codeph>RWindow</codeph> and <codeph>CWindowGc</codeph> commands |
49 are converted to opcodes that are stored in a command buffer. When the command |
49 are converted to opcodes that are stored in a command buffer. When the command |
50 buffer is full, it is automatically <b>flushed</b>, which means that it is |
50 buffer is full, it is automatically <b>flushed</b>, which means that it is |
51 transferred across to a corresponding server-side command buffer. The client |
51 transferred across to a corresponding server-side command buffer. The client |
99 about. For example, the following diagram shows a transition effect in which |
99 about. For example, the following diagram shows a transition effect in which |
100 a window slides onto the screen from the top and temporarily obscures an existing |
100 a window slides onto the screen from the top and temporarily obscures an existing |
101 window on the screen. </p> |
101 window on the screen. </p> |
102 <fig id="GUID-761A5E99-D289-5F58-9747-BBECF0BFB2F2"> |
102 <fig id="GUID-761A5E99-D289-5F58-9747-BBECF0BFB2F2"> |
103 <title> A transition effect temporarily obscures a window on the screen</title> |
103 <title> A transition effect temporarily obscures a window on the screen</title> |
104 <image href="GUID-40BE9805-6CEC-557F-BAAC-4D328E181AC3_d0e201430_href.png" placement="inline"/> |
104 <image href="GUID-40BE9805-6CEC-557F-BAAC-4D328E181AC3_d0e196422_href.png" placement="inline"/> |
105 </fig> |
105 </fig> |
106 <p>In this and similar scenarios, the Window Server does not know whether |
106 <p>In this and similar scenarios, the Window Server does not know whether |
107 a window is obscured or visible. Therefore dirty-rectangle tracking is not |
107 a window is obscured or visible. Therefore dirty-rectangle tracking is not |
108 effective. </p> |
108 effective. </p> |
109 <p>Each screen on the device has a separate render stage chain. |
109 <p>Each screen on the device has a separate render stage chain. |