author | Dominic Pinkman <Dominic.Pinkman@Nokia.com> |
Thu, 11 Mar 2010 18:02:22 +0000 | |
changeset 3 | 46218c8b8afa |
parent 1 | 25a17d01db0c |
child 5 | f345bda72bc4 |
permissions | -rw-r--r-- |
3
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
1 |
<?xml version="1.0" encoding="utf-8"?> |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
2 |
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. --> |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
3 |
<!-- This component and the accompanying materials are made available under the terms of the License |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
4 |
"Eclipse Public License v1.0" which accompanies this distribution, |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
5 |
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". --> |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
6 |
<!-- Initial Contributors: |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
7 |
Nokia Corporation - initial contribution. |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
8 |
Contributors: |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
9 |
--> |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
10 |
<!DOCTYPE concept |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
11 |
PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
12 |
<concept xml:lang="en" id="GUID-053BADC7-858B-5D83-8FEE-BFB6C29AFB73"><title>Render Stages Plug-Ins</title><shortdesc>This topic provides information about render stage plug-ins in the non-ScreenPlay variant. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody><p> <b>Variant</b>: <xref href="GUID-F64E6551-670E-5E12-8103-DE504D3EC94F.dita">Non-ScreenPlay</xref>. <b>Target audience</b>: Device creators. </p> <p> <note>In the non-ScreenPlay variant, the render stage interfaces are |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
13 |
at a prototype stage of development. </note> </p> <p>For information about render stages in ScreenPlay, see <xref href="GUID-3A2785D4-6185-50C3-8D7E-5D94CD2B7C98.dita">ScreenPlay Render Stages</xref>. </p> <section><title>Introduction</title> <p>The primary use case for render stages is transition effects. During transition effects, we want to capture draw operations for transition participants into an offscreen target. Then over a series of frames, we want to perform some transformation of the draw operations, and reintroduce them into the scene. For example, for a disappearing menu, we want to capture the draw operations for the menu, and then perhaps play them back but with different offsets, so that the menu appears to slide off the screen. </p> <p>Render stages make it possible to redirect the drawing, so that we can capture the draw operations. They also make it possible to introduce new draw operations into the stream, so that we can play back the transition effect. </p> <p>The default render stage does neither of these things, simply rendering the draw ops to the default screen target as expected. </p> </section> <section><title>Using render stages </title> <p>The high level steps to creating and using render stages are shown here: </p> <ol id="GUID-B7908ADF-6C53-55C1-977A-3EC221C73F75"><li id="GUID-A3F4F82D-4ABF-537F-82A4-FBA0671D05C4"><p>Screen creates render stage chain at construction time </p> </li> <li id="GUID-3BFDAA17-6392-530A-9FB1-8D0BDF6C1B3C"><p>Render stage performs custom rendering </p> </li> </ol> </section> <section><title>1. Screen creates render stage chain at construction |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
14 |
time</title> <p><b>Setup in WSINI.INI file </b> </p> <p>The render stages to be used are specified on a per screen basis. </p> <p>For example: </p> <p> <codeph>[SCREEN 1] </codeph> </p> <p> <codeph>RENDERSTAGES FLICKERFREE STD</codeph> </p> <p>If no render stages are specified, the default render stages will be used. </p> <p><b>Process </b> </p> <p>The following code is required: </p> <p> <codeph>CScreenRedraw::ConstructL()</codeph> - this constructs a <xref href="GUID-D5E0D138-2206-3DE6-9681-2E7C06E9C0FA.dita"><apiname>CScreenRedraw</apiname></xref> object </p> <p> <codeph>WsIniFile->FindVar(iScreenNumber, “RENDERSTAGES”) </codeph> - this returns the list of render stages to be used on this screen </p> <p> <b>For</b> each specified render stage, call <codeph>CWsPluginManager::FindNamedImplementation<MWsRenderStageFactory>()</codeph> </p> <p> <b>For</b> each plug-in in the list: </p> <ul><li id="GUID-F2466555-6BBA-53CC-B825-BBDED289E600"><p>Call <codeph>ResolveObjectInterface(“MWsRenderStageFactory”)</codeph> on the <xref href="GUID-28DEFD88-3AB5-3F94-9A26-27B240294950.dita"><apiname>CWsPlugin</apiname></xref> instance. If the plug-in is a render stage factory, it is required to “<codeph>return this</codeph> ”, otherwise “<codeph>return NULL</codeph> ”. </p> </li> <li id="GUID-B802F1C8-D2B1-513D-802C-75F1F093E183"><p>If an <xref href="GUID-DE3DA8CA-437D-33B8-A747-941810A48897.dita"><apiname>MWsRenderStageFactory</apiname></xref> pointer is returned, and the plug-in has the correct name, return the <xref href="GUID-DE3DA8CA-437D-33B8-A747-941810A48897.dita"><apiname>MWsRenderStageFactory</apiname></xref>. </p> </li> </ul> <p> <b>Endfor</b> (plug-ins) </p> <p>Call <codeph>MWsRenderStageFactory::CreateStageL() </codeph> - this calls into the plug-in’s render stage factory. The implementor of the SPI is required to return a <xref href="GUID-B89CEF40-0139-3E6F-803D-F74E2BCB029A.dita"><apiname>CWsRenderStage</apiname></xref> * which is pointing to an instance of a custom subclass. </p> <p>Connect the output of one stage to the input of the next </p> <p> <b>Endfor</b> (specified render stages) </p> </section> <section><title>2. Render stage performs custom rendering</title> <p><b>Process </b> </p> <p>The following code is required: </p> <p> <codeph>CScreenRedraw::OnAnimation()</codeph> - WSERV redraw scheduler causes rendering to occur </p> <p>Call <codeph>CWsRenderStage::Begin() </codeph> on the first render stage. This returns the <codeph>CFbsBitGc*</codeph> to be used for drawing </p> <p>Issue draw operations to the <codeph>CFbsBitGc*</codeph> </p> <p>The render stage processes the draw operations </p> <p>Call <codeph>CWsRenderStage::End()</codeph> on the first render stage </p> <p> <note>Note that WSERV only talks to the first render stage. This may |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
15 |
in turn talk to the second render stage and so on, but WSERV won’t know |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
16 |
anything about this.</note> </p> </section> </conbody><related-links><link href="GUID-39CFE2E2-9776-54EE-8E3B-8B85AFF1697A.dita"><linktext>Window Server Plug-in Framework in the |
46218c8b8afa
week 10 bug fix submission (SF PDK version): Bug 1892, Bug 1897, Bug 1319. Also 3 or 4 documents were found to contain code blocks with SFL, which has been fixed. Partial fix for broken links, links to Forum Nokia, and the 'Symbian platform' terminology issues.
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
1
diff
changeset
|
17 |
Non-ScreenPlay Variant </linktext> </link> <link href="GUID-139F9E66-830D-5B94-8674-2F90152EBC4A.dita"><linktext> Fader Plug-ins</linktext> </link> <link href="GUID-434F690E-738A-51DF-80CC-8A6CC067DA6C.dita"><linktext>Miscellaneous Plug-in |
1
25a17d01db0c
Addition of the PDK content and example code for Documentation_content according to Feature bug 1607 and bug 1608
Dominic Pinkman <Dominic.Pinkman@Nokia.com>
parents:
diff
changeset
|
18 |
Interfaces</linktext> </link> <link href="GUID-E7F6DD98-9080-50E9-B071-56247EBBF570.dita"><linktext>Window Server Plugins Component</linktext> </link> <link href="GUID-3A2785D4-6185-50C3-8D7E-5D94CD2B7C98.dita"><linktext>Render Stages</linktext> </link> </related-links></concept> |