source: NonGTP/FCollada/Documentation/class_f_c_d_effect_pass.html @ 964

Revision 964, 36.0 KB checked in by igarcia, 19 years ago (diff)
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3<title>FCollada: FCDEffectPass Class Reference</title>
4<link href="doxygen.css" rel="stylesheet" type="text/css">
5<link href="tabs.css" rel="stylesheet" type="text/css">
6</head><body>
7<!-- Generated by Doxygen 1.4.6-NO -->
8<div class="tabs">
9  <ul>
10    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
11    <li><a href="modules.html"><span>Modules</span></a></li>
12    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
13    <li id="current"><a href="classes.html"><span>Classes</span></a></li>
14    <li><a href="files.html"><span>Files</span></a></li>
15    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
16  </ul></div>
17<div class="tabs">
18  <ul>
19    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
20    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
21    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
22    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
23  </ul></div>
24<h1>FCDEffectPass Class Reference<br>
25<small>
26[<a class="el" href="group___f_c_d_effect.html">COLLADA Effect Classes [ColladaFX]</a>]</small>
27</h1><!-- doxytag: class="FCDEffectPass" --><!-- doxytag: inherits="FCDObject" -->A COLLADA effect pass. 
28<a href="#_details">More...</a>
29<p>
30<code>#include &lt;<a class="el" href="_f_c_d_effect_pass_8h-source.html">FCDEffectPass.h</a>&gt;</code>
31<p>
32<p>Inheritance diagram for FCDEffectPass:
33<p><center><img src="class_f_c_d_effect_pass.png" usemap="#FCDEffectPass_map" border="0" alt=""></center>
34<map name="FCDEffectPass_map">
35<area href="class_f_c_d_object.html" alt="FCDObject" shape="rect" coords="0,56,98,80">
36<area href="class_f_u_object.html" alt="FUObject" shape="rect" coords="0,0,98,24">
37</map>
38<a href="class_f_c_d_effect_pass-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
39<tr><td></td></tr>
40<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
41<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#f68fb9df087639b25aaeed5a7870bf32">FCDEffectPass</a> (<a class="el" href="class_f_c_document.html">FCDocument</a> *document, <a class="el" href="class_f_c_d_effect_technique.html">FCDEffectTechnique</a> *_parent)</td></tr>
42
43<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor: do not use directly.  <a href="#f68fb9df087639b25aaeed5a7870bf32"></a><br></td></tr>
44<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#3a9cf04934bb8eefd1e25f496bc81e16">~FCDEffectPass</a> ()</td></tr>
45
46<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor: do not use directly.  <a href="#3a9cf04934bb8eefd1e25f496bc81e16"></a><br></td></tr>
47<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_technique.html">FCDEffectTechnique</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#d8c83b72090cee6340c41482c743b19d">GetParent</a> ()</td></tr>
48
49<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the effect techniques which contains this effect pass.  <a href="#d8c83b72090cee6340c41482c743b19d"></a><br></td></tr>
50<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e3c3a6a9fc9aa96385908b866e730f69"></a><!-- doxytag: member="FCDEffectPass::GetParent" ref="e3c3a6a9fc9aa96385908b866e730f69" args="() const " -->
51const <a class="el" href="class_f_c_d_effect_technique.html">FCDEffectTechnique</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#e3c3a6a9fc9aa96385908b866e730f69">GetParent</a> () const </td></tr>
52
53<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See above. <br></td></tr>
54<tr><td class="memItemLeft" nowrap align="right" valign="top">const string &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#a5252866d26b44aa93887f32431da948">GetDaeId</a> () const </td></tr>
55
56<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the COLLADA id of the parent effect.  <a href="#a5252866d26b44aa93887f32431da948"></a><br></td></tr>
57<tr><td class="memItemLeft" nowrap align="right" valign="top">const fstring &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#965264f2ebd9bfab1eda85402b4e62b0">GetPassName</a> () const </td></tr>
58
59<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the sub-id of the effect pass.  <a href="#965264f2ebd9bfab1eda85402b4e62b0"></a><br></td></tr>
60<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#6ec4a5bc7603887915f77757104cf758">SetPassName</a> (const fstring &amp;_name)</td></tr>
61
62<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the optional sub-id for the effect pass.  <a href="#6ec4a5bc7603887915f77757104cf758"></a><br></td></tr>
63<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classvector.html">MeshDataList</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#7acde4f46ea3c836b918931c693be2ae">GetMeshData</a> () const </td></tr>
64
65<tr><td class="memItemLeft" nowrap align="right" valign="top">size_t&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#91266b26fcb7e861dd32d065f1d3e03a">GetShaderCount</a> () const </td></tr>
66
67<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the number of shaders contained within the effect pass.  <a href="#91266b26fcb7e861dd32d065f1d3e03a"></a><br></td></tr>
68<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#4812f4512392d1c3599adc9411292742">GetShader</a> (size_t index)</td></tr>
69
70<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves a specific shader.  <a href="#4812f4512392d1c3599adc9411292742"></a><br></td></tr>
71<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="594254479c6b9459963347609f013c0d"></a><!-- doxytag: member="FCDEffectPass::GetShader" ref="594254479c6b9459963347609f013c0d" args="(size_t index) const " -->
72const <a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#594254479c6b9459963347609f013c0d">GetShader</a> (size_t index) const </td></tr>
73
74<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See above. <br></td></tr>
75<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#1201479e8069bdc3bccf83cca75b51b6">AddShader</a> ()</td></tr>
76
77<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new shader to the pass.  <a href="#1201479e8069bdc3bccf83cca75b51b6"></a><br></td></tr>
78<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#e03f109e8fc76883c77d7bf76f47b7f4">ReleaseShader</a> (<a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *shader)</td></tr>
79
80<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Releases a shader contained within the pass.  <a href="#e03f109e8fc76883c77d7bf76f47b7f4"></a><br></td></tr>
81<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#d5be823d1fcf2b809d88edc3d4bd128e">GetVertexShader</a> ()</td></tr>
82
83<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the vertex shader for this effect pass.  <a href="#d5be823d1fcf2b809d88edc3d4bd128e"></a><br></td></tr>
84<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7dd52a8b67224248688d668b29837864"></a><!-- doxytag: member="FCDEffectPass::GetVertexShader" ref="7dd52a8b67224248688d668b29837864" args="() const " -->
85const <a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#7dd52a8b67224248688d668b29837864">GetVertexShader</a> () const </td></tr>
86
87<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See above. <br></td></tr>
88<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#5c2d7a6cb07d072474a712d7989b0c47">GetFragmentShader</a> ()</td></tr>
89
90<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retrieves the fragment shader for this effect pass.  <a href="#5c2d7a6cb07d072474a712d7989b0c47"></a><br></td></tr>
91<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b0205651a85f1a2546296c02e3967921"></a><!-- doxytag: member="FCDEffectPass::GetFragmentShader" ref="b0205651a85f1a2546296c02e3967921" args="() const " -->
92const <a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#b0205651a85f1a2546296c02e3967921">GetFragmentShader</a> () const </td></tr>
93
94<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See above. <br></td></tr>
95<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#b29f497e4e24f202971a9b17cfc2db2f">AddVertexShader</a> ()</td></tr>
96
97<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new vertex shader to the pass.  <a href="#b29f497e4e24f202971a9b17cfc2db2f"></a><br></td></tr>
98<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#d05daf726e3ccf4308be38b19c9e9463">AddFragmentShader</a> ()</td></tr>
99
100<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new fragment shader to the pass.  <a href="#d05daf726e3ccf4308be38b19c9e9463"></a><br></td></tr>
101<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_c_d_effect_pass.html">FCDEffectPass</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#11a7349838019950aeb5e0d048a6e45e">Clone</a> (<a class="el" href="class_f_c_d_effect_technique.html">FCDEffectTechnique</a> *newParent) const </td></tr>
102
103<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">[INTERNAL] Clones the full effect pass.  <a href="#11a7349838019950aeb5e0d048a6e45e"></a><br></td></tr>
104<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="class_f_u_status.html">FUStatus</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#4fb009379a088fc79d147363f4bdcf32">LoadFromXML</a> (xmlNode *passNode, xmlNode *techniqueNode, xmlNode *profileNode)</td></tr>
105
106<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">[INTERNAL] Reads in the effect pass from a given COLLADA XML tree node.  <a href="#4fb009379a088fc79d147363f4bdcf32"></a><br></td></tr>
107<tr><td class="memItemLeft" nowrap align="right" valign="top">xmlNode *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_f_c_d_effect_pass.html#4c1a69c77f19dacc2e879926fd092d0c">WriteToXML</a> (xmlNode *parentNode) const </td></tr>
108
109<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">[INTERNAL] Writes out the effect pass to the given COLLADA XML tree node.  <a href="#4c1a69c77f19dacc2e879926fd092d0c"></a><br></td></tr>
110</table>
111<hr><a name="_details"></a><h2>Detailed Description</h2>
112A COLLADA effect pass.
113<p>
114The effect pass contains a list of effect shaders. While they may be missing, it does not make sense for the effect pass to contain more than two shaders: a vertex shader and a fragment/pixel shader.<p>
115For this reason, we provide the GetVertexShader and the GetFragmentShader which we expect will be used for most applications, rather than looking through the list of shader objects.
116<p>
117<hr><h2>Constructor &amp; Destructor Documentation</h2>
118<a class="anchor" name="f68fb9df087639b25aaeed5a7870bf32"></a><!-- doxytag: member="FCDEffectPass::FCDEffectPass" ref="f68fb9df087639b25aaeed5a7870bf32" args="(FCDocument *document, FCDEffectTechnique *_parent)" --><p>
119<table class="mdTable" cellpadding="2" cellspacing="0">
120  <tr>
121    <td class="mdRow">
122      <table cellpadding="0" cellspacing="0" border="0">
123        <tr>
124          <td class="md" nowrap valign="top">FCDEffectPass::FCDEffectPass           </td>
125          <td class="md" valign="top">(&nbsp;</td>
126          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_document.html">FCDocument</a> *&nbsp;</td>
127          <td class="mdname" nowrap> <em>document</em>, </td>
128        </tr>
129        <tr>
130          <td class="md" nowrap align="right"></td>
131          <td class="md"></td>
132          <td class="md" nowrap><a class="el" href="class_f_c_d_effect_technique.html">FCDEffectTechnique</a> *&nbsp;</td>
133          <td class="mdname" nowrap> <em>_parent</em></td>
134        </tr>
135        <tr>
136          <td class="md"></td>
137          <td class="md">)&nbsp;</td>
138          <td class="md" colspan="2"></td>
139        </tr>
140      </table>
141    </td>
142  </tr>
143</table>
144<table cellspacing="5" cellpadding="0" border="0">
145  <tr>
146    <td>
147      &nbsp;
148    </td>
149    <td>
150
151<p>
152Constructor: do not use directly.
153<p>
154Instead, use the <a class="el" href="class_f_c_d_effect_technique.html#95d1e8b9fbf7aa2f25dbff7f5983fdaa">FCDEffectTechnique::AddPass</a> function. <dl compact><dt><b>Parameters:</b></dt><dd>
155  <table border="0" cellspacing="2" cellpadding="0">
156    <tr><td valign="top"></td><td valign="top"><em>document</em>&nbsp;</td><td>The COLLADA document that owns this effect pass. </td></tr>
157    <tr><td valign="top"></td><td valign="top"><em>_parent</em>&nbsp;</td><td>The effect technique that contains this effect pass. </td></tr>
158  </table>
159</dl>
160    </td>
161  </tr>
162</table>
163<a class="anchor" name="3a9cf04934bb8eefd1e25f496bc81e16"></a><!-- doxytag: member="FCDEffectPass::~FCDEffectPass" ref="3a9cf04934bb8eefd1e25f496bc81e16" args="()" --><p>
164<table class="mdTable" cellpadding="2" cellspacing="0">
165  <tr>
166    <td class="mdRow">
167      <table cellpadding="0" cellspacing="0" border="0">
168        <tr>
169          <td class="md" nowrap valign="top">virtual FCDEffectPass::~FCDEffectPass           </td>
170          <td class="md" valign="top">(&nbsp;</td>
171          <td class="mdname1" valign="top" nowrap>          </td>
172          <td class="md" valign="top">&nbsp;)&nbsp;</td>
173          <td class="md" nowrap><code> [virtual]</code></td>
174        </tr>
175      </table>
176    </td>
177  </tr>
178</table>
179<table cellspacing="5" cellpadding="0" border="0">
180  <tr>
181    <td>
182      &nbsp;
183    </td>
184    <td>
185
186<p>
187Destructor: do not use directly.
188<p>
189Instead, use the <a class="el" href="class_f_c_d_effect_technique.html#d07f2c11288a0f6c252ee7fcef0fcdf5">FCDEffectTechnique::ReleasePass</a> function.     </td>
190  </tr>
191</table>
192<hr><h2>Member Function Documentation</h2>
193<a class="anchor" name="d05daf726e3ccf4308be38b19c9e9463"></a><!-- doxytag: member="FCDEffectPass::AddFragmentShader" ref="d05daf726e3ccf4308be38b19c9e9463" args="()" --><p>
194<table class="mdTable" cellpadding="2" cellspacing="0">
195  <tr>
196    <td class="mdRow">
197      <table cellpadding="0" cellspacing="0" border="0">
198        <tr>
199          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a>* FCDEffectPass::AddFragmentShader           </td>
200          <td class="md" valign="top">(&nbsp;</td>
201          <td class="mdname1" valign="top" nowrap>          </td>
202          <td class="md" valign="top">&nbsp;)&nbsp;</td>
203          <td class="md" nowrap></td>
204        </tr>
205      </table>
206    </td>
207  </tr>
208</table>
209<table cellspacing="5" cellpadding="0" border="0">
210  <tr>
211    <td>
212      &nbsp;
213    </td>
214    <td>
215
216<p>
217Adds a new fragment shader to the pass.
218<p>
219If a fragment shader already exists within the pass, it will be released. <dl compact><dt><b>Returns:</b></dt><dd>The new fragment shader. </dd></dl>
220    </td>
221  </tr>
222</table>
223<a class="anchor" name="1201479e8069bdc3bccf83cca75b51b6"></a><!-- doxytag: member="FCDEffectPass::AddShader" ref="1201479e8069bdc3bccf83cca75b51b6" args="()" --><p>
224<table class="mdTable" cellpadding="2" cellspacing="0">
225  <tr>
226    <td class="mdRow">
227      <table cellpadding="0" cellspacing="0" border="0">
228        <tr>
229          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a>* FCDEffectPass::AddShader           </td>
230          <td class="md" valign="top">(&nbsp;</td>
231          <td class="mdname1" valign="top" nowrap>          </td>
232          <td class="md" valign="top">&nbsp;)&nbsp;</td>
233          <td class="md" nowrap></td>
234        </tr>
235      </table>
236    </td>
237  </tr>
238</table>
239<table cellspacing="5" cellpadding="0" border="0">
240  <tr>
241    <td>
242      &nbsp;
243    </td>
244    <td>
245
246<p>
247Adds a new shader to the pass.
248<p>
249<dl compact><dt><b>Returns:</b></dt><dd>The new shader. </dd></dl>
250    </td>
251  </tr>
252</table>
253<a class="anchor" name="b29f497e4e24f202971a9b17cfc2db2f"></a><!-- doxytag: member="FCDEffectPass::AddVertexShader" ref="b29f497e4e24f202971a9b17cfc2db2f" args="()" --><p>
254<table class="mdTable" cellpadding="2" cellspacing="0">
255  <tr>
256    <td class="mdRow">
257      <table cellpadding="0" cellspacing="0" border="0">
258        <tr>
259          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a>* FCDEffectPass::AddVertexShader           </td>
260          <td class="md" valign="top">(&nbsp;</td>
261          <td class="mdname1" valign="top" nowrap>          </td>
262          <td class="md" valign="top">&nbsp;)&nbsp;</td>
263          <td class="md" nowrap></td>
264        </tr>
265      </table>
266    </td>
267  </tr>
268</table>
269<table cellspacing="5" cellpadding="0" border="0">
270  <tr>
271    <td>
272      &nbsp;
273    </td>
274    <td>
275
276<p>
277Adds a new vertex shader to the pass.
278<p>
279If a vertex shader already exists within the pass, it will be released. <dl compact><dt><b>Returns:</b></dt><dd>The new vertex shader. </dd></dl>
280    </td>
281  </tr>
282</table>
283<a class="anchor" name="11a7349838019950aeb5e0d048a6e45e"></a><!-- doxytag: member="FCDEffectPass::Clone" ref="11a7349838019950aeb5e0d048a6e45e" args="(FCDEffectTechnique *newParent) const " --><p>
284<table class="mdTable" cellpadding="2" cellspacing="0">
285  <tr>
286    <td class="mdRow">
287      <table cellpadding="0" cellspacing="0" border="0">
288        <tr>
289          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_pass.html">FCDEffectPass</a>* FCDEffectPass::Clone           </td>
290          <td class="md" valign="top">(&nbsp;</td>
291          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_technique.html">FCDEffectTechnique</a> *&nbsp;</td>
292          <td class="mdname1" valign="top" nowrap> <em>newParent</em>          </td>
293          <td class="md" valign="top">&nbsp;)&nbsp;</td>
294          <td class="md" nowrap> const</td>
295        </tr>
296      </table>
297    </td>
298  </tr>
299</table>
300<table cellspacing="5" cellpadding="0" border="0">
301  <tr>
302    <td>
303      &nbsp;
304    </td>
305    <td>
306
307<p>
308[INTERNAL] Clones the full effect pass.
309<p>
310<dl compact><dt><b>Parameters:</b></dt><dd>
311  <table border="0" cellspacing="2" cellpadding="0">
312    <tr><td valign="top"></td><td valign="top"><em>newParent</em>&nbsp;</td><td>The effect technique that will contain the cloned profile. </td></tr>
313  </table>
314</dl>
315<dl compact><dt><b>Returns:</b></dt><dd>The cloned pass. This pointer will never be NULL. </dd></dl>
316    </td>
317  </tr>
318</table>
319<a class="anchor" name="a5252866d26b44aa93887f32431da948"></a><!-- doxytag: member="FCDEffectPass::GetDaeId" ref="a5252866d26b44aa93887f32431da948" args="() const " --><p>
320<table class="mdTable" cellpadding="2" cellspacing="0">
321  <tr>
322    <td class="mdRow">
323      <table cellpadding="0" cellspacing="0" border="0">
324        <tr>
325          <td class="md" nowrap valign="top">const string&amp; FCDEffectPass::GetDaeId           </td>
326          <td class="md" valign="top">(&nbsp;</td>
327          <td class="mdname1" valign="top" nowrap>          </td>
328          <td class="md" valign="top">&nbsp;)&nbsp;</td>
329          <td class="md" nowrap> const</td>
330        </tr>
331      </table>
332    </td>
333  </tr>
334</table>
335<table cellspacing="5" cellpadding="0" border="0">
336  <tr>
337    <td>
338      &nbsp;
339    </td>
340    <td>
341
342<p>
343Retrieves the COLLADA id of the parent effect.
344<p>
345This function is mostly useful as a shortcut for debugging and reporting. <dl compact><dt><b>Returns:</b></dt><dd>The COLLADA id of the parent effect. </dd></dl>
346    </td>
347  </tr>
348</table>
349<a class="anchor" name="5c2d7a6cb07d072474a712d7989b0c47"></a><!-- doxytag: member="FCDEffectPass::GetFragmentShader" ref="5c2d7a6cb07d072474a712d7989b0c47" args="()" --><p>
350<table class="mdTable" cellpadding="2" cellspacing="0">
351  <tr>
352    <td class="mdRow">
353      <table cellpadding="0" cellspacing="0" border="0">
354        <tr>
355          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a>* FCDEffectPass::GetFragmentShader           </td>
356          <td class="md" valign="top">(&nbsp;</td>
357          <td class="mdname1" valign="top" nowrap>          </td>
358          <td class="md" valign="top">&nbsp;)&nbsp;</td>
359          <td class="md" nowrap></td>
360        </tr>
361      </table>
362    </td>
363  </tr>
364</table>
365<table cellspacing="5" cellpadding="0" border="0">
366  <tr>
367    <td>
368      &nbsp;
369    </td>
370    <td>
371
372<p>
373Retrieves the fragment shader for this effect pass.
374<p>
375<dl compact><dt><b>Returns:</b></dt><dd>The fragment shader. This pointer will be NULL if no shader within the pass affects pixels/fragments. </dd></dl>
376    </td>
377  </tr>
378</table>
379<a class="anchor" name="7acde4f46ea3c836b918931c693be2ae"></a><!-- doxytag: member="FCDEffectPass::GetMeshData" ref="7acde4f46ea3c836b918931c693be2ae" args="() const " --><p>
380<table class="mdTable" cellpadding="2" cellspacing="0">
381  <tr>
382    <td class="mdRow">
383      <table cellpadding="0" cellspacing="0" border="0">
384        <tr>
385          <td class="md" nowrap valign="top">const <a class="el" href="classvector.html">MeshDataList</a>&amp; FCDEffectPass::GetMeshData           </td>
386          <td class="md" valign="top">(&nbsp;</td>
387          <td class="mdname1" valign="top" nowrap>          </td>
388          <td class="md" valign="top">&nbsp;)&nbsp;</td>
389          <td class="md" nowrap> const<code> [inline]</code></td>
390        </tr>
391      </table>
392    </td>
393  </tr>
394</table>
395<table cellspacing="5" cellpadding="0" border="0">
396  <tr>
397    <td>
398      &nbsp;
399    </td>
400    <td>
401
402<p>
403<dl compact><dt><b><a class="el" href="deprecated.html#_deprecated000006">Deprecated:</a></b></dt><dd>Retrieves the list of mesh data bindings. This patches bad export data in ColladaMaya and will be removed soon. </dd></dl>
404<dl compact><dt><b>Returns:</b></dt><dd>The list of mesh data bindings. </dd></dl>
405    </td>
406  </tr>
407</table>
408<a class="anchor" name="d8c83b72090cee6340c41482c743b19d"></a><!-- doxytag: member="FCDEffectPass::GetParent" ref="d8c83b72090cee6340c41482c743b19d" args="()" --><p>
409<table class="mdTable" cellpadding="2" cellspacing="0">
410  <tr>
411    <td class="mdRow">
412      <table cellpadding="0" cellspacing="0" border="0">
413        <tr>
414          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_technique.html">FCDEffectTechnique</a>* FCDEffectPass::GetParent           </td>
415          <td class="md" valign="top">(&nbsp;</td>
416          <td class="mdname1" valign="top" nowrap>          </td>
417          <td class="md" valign="top">&nbsp;)&nbsp;</td>
418          <td class="md" nowrap><code> [inline]</code></td>
419        </tr>
420      </table>
421    </td>
422  </tr>
423</table>
424<table cellspacing="5" cellpadding="0" border="0">
425  <tr>
426    <td>
427      &nbsp;
428    </td>
429    <td>
430
431<p>
432Retrieves the effect techniques which contains this effect pass.
433<p>
434<dl compact><dt><b>Returns:</b></dt><dd>The parent technique. </dd></dl>
435    </td>
436  </tr>
437</table>
438<a class="anchor" name="965264f2ebd9bfab1eda85402b4e62b0"></a><!-- doxytag: member="FCDEffectPass::GetPassName" ref="965264f2ebd9bfab1eda85402b4e62b0" args="() const " --><p>
439<table class="mdTable" cellpadding="2" cellspacing="0">
440  <tr>
441    <td class="mdRow">
442      <table cellpadding="0" cellspacing="0" border="0">
443        <tr>
444          <td class="md" nowrap valign="top">const fstring&amp; FCDEffectPass::GetPassName           </td>
445          <td class="md" valign="top">(&nbsp;</td>
446          <td class="mdname1" valign="top" nowrap>          </td>
447          <td class="md" valign="top">&nbsp;)&nbsp;</td>
448          <td class="md" nowrap> const<code> [inline]</code></td>
449        </tr>
450      </table>
451    </td>
452  </tr>
453</table>
454<table cellspacing="5" cellpadding="0" border="0">
455  <tr>
456    <td>
457      &nbsp;
458    </td>
459    <td>
460
461<p>
462Retrieves the sub-id of the effect pass.
463<p>
464This sub-id is optional. <dl compact><dt><b>Returns:</b></dt><dd>The sub-id. </dd></dl>
465    </td>
466  </tr>
467</table>
468<a class="anchor" name="4812f4512392d1c3599adc9411292742"></a><!-- doxytag: member="FCDEffectPass::GetShader" ref="4812f4512392d1c3599adc9411292742" args="(size_t index)" --><p>
469<table class="mdTable" cellpadding="2" cellspacing="0">
470  <tr>
471    <td class="mdRow">
472      <table cellpadding="0" cellspacing="0" border="0">
473        <tr>
474          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a>* FCDEffectPass::GetShader           </td>
475          <td class="md" valign="top">(&nbsp;</td>
476          <td class="md" nowrap valign="top">size_t&nbsp;</td>
477          <td class="mdname1" valign="top" nowrap> <em>index</em>          </td>
478          <td class="md" valign="top">&nbsp;)&nbsp;</td>
479          <td class="md" nowrap><code> [inline]</code></td>
480        </tr>
481      </table>
482    </td>
483  </tr>
484</table>
485<table cellspacing="5" cellpadding="0" border="0">
486  <tr>
487    <td>
488      &nbsp;
489    </td>
490    <td>
491
492<p>
493Retrieves a specific shader.
494<p>
495<dl compact><dt><b>Parameters:</b></dt><dd>
496  <table border="0" cellspacing="2" cellpadding="0">
497    <tr><td valign="top"></td><td valign="top"><em>index</em>&nbsp;</td><td>The index of the shader. </td></tr>
498  </table>
499</dl>
500<dl compact><dt><b>Returns:</b></dt><dd>The shader. This pointer will be NULL if the index is out-of-bounds. </dd></dl>
501    </td>
502  </tr>
503</table>
504<a class="anchor" name="91266b26fcb7e861dd32d065f1d3e03a"></a><!-- doxytag: member="FCDEffectPass::GetShaderCount" ref="91266b26fcb7e861dd32d065f1d3e03a" args="() const " --><p>
505<table class="mdTable" cellpadding="2" cellspacing="0">
506  <tr>
507    <td class="mdRow">
508      <table cellpadding="0" cellspacing="0" border="0">
509        <tr>
510          <td class="md" nowrap valign="top">size_t FCDEffectPass::GetShaderCount           </td>
511          <td class="md" valign="top">(&nbsp;</td>
512          <td class="mdname1" valign="top" nowrap>          </td>
513          <td class="md" valign="top">&nbsp;)&nbsp;</td>
514          <td class="md" nowrap> const<code> [inline]</code></td>
515        </tr>
516      </table>
517    </td>
518  </tr>
519</table>
520<table cellspacing="5" cellpadding="0" border="0">
521  <tr>
522    <td>
523      &nbsp;
524    </td>
525    <td>
526
527<p>
528Retrieves the number of shaders contained within the effect pass.
529<p>
530<dl compact><dt><b>Returns:</b></dt><dd>The number of shaders. </dd></dl>
531    </td>
532  </tr>
533</table>
534<a class="anchor" name="d5be823d1fcf2b809d88edc3d4bd128e"></a><!-- doxytag: member="FCDEffectPass::GetVertexShader" ref="d5be823d1fcf2b809d88edc3d4bd128e" args="()" --><p>
535<table class="mdTable" cellpadding="2" cellspacing="0">
536  <tr>
537    <td class="mdRow">
538      <table cellpadding="0" cellspacing="0" border="0">
539        <tr>
540          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a>* FCDEffectPass::GetVertexShader           </td>
541          <td class="md" valign="top">(&nbsp;</td>
542          <td class="mdname1" valign="top" nowrap>          </td>
543          <td class="md" valign="top">&nbsp;)&nbsp;</td>
544          <td class="md" nowrap></td>
545        </tr>
546      </table>
547    </td>
548  </tr>
549</table>
550<table cellspacing="5" cellpadding="0" border="0">
551  <tr>
552    <td>
553      &nbsp;
554    </td>
555    <td>
556
557<p>
558Retrieves the vertex shader for this effect pass.
559<p>
560<dl compact><dt><b>Returns:</b></dt><dd>The vertex shader. This pointer will be NULL if no shader within the pass affects vertices. </dd></dl>
561    </td>
562  </tr>
563</table>
564<a class="anchor" name="4fb009379a088fc79d147363f4bdcf32"></a><!-- doxytag: member="FCDEffectPass::LoadFromXML" ref="4fb009379a088fc79d147363f4bdcf32" args="(xmlNode *passNode, xmlNode *techniqueNode, xmlNode *profileNode)" --><p>
565<table class="mdTable" cellpadding="2" cellspacing="0">
566  <tr>
567    <td class="mdRow">
568      <table cellpadding="0" cellspacing="0" border="0">
569        <tr>
570          <td class="md" nowrap valign="top"><a class="el" href="class_f_u_status.html">FUStatus</a> FCDEffectPass::LoadFromXML           </td>
571          <td class="md" valign="top">(&nbsp;</td>
572          <td class="md" nowrap valign="top">xmlNode *&nbsp;</td>
573          <td class="mdname" nowrap> <em>passNode</em>, </td>
574        </tr>
575        <tr>
576          <td class="md" nowrap align="right"></td>
577          <td class="md"></td>
578          <td class="md" nowrap>xmlNode *&nbsp;</td>
579          <td class="mdname" nowrap> <em>techniqueNode</em>, </td>
580        </tr>
581        <tr>
582          <td class="md" nowrap align="right"></td>
583          <td class="md"></td>
584          <td class="md" nowrap>xmlNode *&nbsp;</td>
585          <td class="mdname" nowrap> <em>profileNode</em></td>
586        </tr>
587        <tr>
588          <td class="md"></td>
589          <td class="md">)&nbsp;</td>
590          <td class="md" colspan="2"></td>
591        </tr>
592      </table>
593    </td>
594  </tr>
595</table>
596<table cellspacing="5" cellpadding="0" border="0">
597  <tr>
598    <td>
599      &nbsp;
600    </td>
601    <td>
602
603<p>
604[INTERNAL] Reads in the effect pass from a given COLLADA XML tree node.
605<p>
606<dl compact><dt><b>Parameters:</b></dt><dd>
607  <table border="0" cellspacing="2" cellpadding="0">
608    <tr><td valign="top"></td><td valign="top"><em>passNode</em>&nbsp;</td><td>The COLLADA XML tree node. </td></tr>
609    <tr><td valign="top"></td><td valign="top"><em>techniqueNode</em>&nbsp;</td><td>X</td></tr>
610  </table>
611</dl>
612<dl compact><dt><b><a class="el" href="deprecated.html#_deprecated000007">Deprecated:</a></b></dt><dd>bad interface : this dependency must be taken out[3] </dd></dl>
613<dl compact><dt><b>Parameters:</b></dt><dd>
614  <table border="0" cellspacing="2" cellpadding="0">
615    <tr><td valign="top"></td><td valign="top"><em>profileNode</em>&nbsp;</td><td>X</td></tr>
616  </table>
617</dl>
618<dl compact><dt><b><a class="el" href="deprecated.html#_deprecated000007">Deprecated:</a></b></dt><dd>bad interface : this dependency must be taken out[2] </dd></dl>
619<dl compact><dt><b>Returns:</b></dt><dd>The status of the import. If the status is not successful, it may be dangerous to extract information from the effect pass. </dd></dl>
620    </td>
621  </tr>
622</table>
623<a class="anchor" name="e03f109e8fc76883c77d7bf76f47b7f4"></a><!-- doxytag: member="FCDEffectPass::ReleaseShader" ref="e03f109e8fc76883c77d7bf76f47b7f4" args="(FCDEffectPassShader *shader)" --><p>
624<table class="mdTable" cellpadding="2" cellspacing="0">
625  <tr>
626    <td class="mdRow">
627      <table cellpadding="0" cellspacing="0" border="0">
628        <tr>
629          <td class="md" nowrap valign="top">void FCDEffectPass::ReleaseShader           </td>
630          <td class="md" valign="top">(&nbsp;</td>
631          <td class="md" nowrap valign="top"><a class="el" href="class_f_c_d_effect_pass_shader.html">FCDEffectPassShader</a> *&nbsp;</td>
632          <td class="mdname1" valign="top" nowrap> <em>shader</em>          </td>
633          <td class="md" valign="top">&nbsp;)&nbsp;</td>
634          <td class="md" nowrap></td>
635        </tr>
636      </table>
637    </td>
638  </tr>
639</table>
640<table cellspacing="5" cellpadding="0" border="0">
641  <tr>
642    <td>
643      &nbsp;
644    </td>
645    <td>
646
647<p>
648Releases a shader contained within the pass.
649<p>
650<dl compact><dt><b>Parameters:</b></dt><dd>
651  <table border="0" cellspacing="2" cellpadding="0">
652    <tr><td valign="top"></td><td valign="top"><em>shader</em>&nbsp;</td><td>The shader to release. </td></tr>
653  </table>
654</dl>
655    </td>
656  </tr>
657</table>
658<a class="anchor" name="6ec4a5bc7603887915f77757104cf758"></a><!-- doxytag: member="FCDEffectPass::SetPassName" ref="6ec4a5bc7603887915f77757104cf758" args="(const fstring &amp;_name)" --><p>
659<table class="mdTable" cellpadding="2" cellspacing="0">
660  <tr>
661    <td class="mdRow">
662      <table cellpadding="0" cellspacing="0" border="0">
663        <tr>
664          <td class="md" nowrap valign="top">void FCDEffectPass::SetPassName           </td>
665          <td class="md" valign="top">(&nbsp;</td>
666          <td class="md" nowrap valign="top">const fstring &amp;&nbsp;</td>
667          <td class="mdname1" valign="top" nowrap> <em>_name</em>          </td>
668          <td class="md" valign="top">&nbsp;)&nbsp;</td>
669          <td class="md" nowrap><code> [inline]</code></td>
670        </tr>
671      </table>
672    </td>
673  </tr>
674</table>
675<table cellspacing="5" cellpadding="0" border="0">
676  <tr>
677    <td>
678      &nbsp;
679    </td>
680    <td>
681
682<p>
683Sets the optional sub-id for the effect pass.
684<p>
685This sub-id is optional. <dl compact><dt><b>Parameters:</b></dt><dd>
686  <table border="0" cellspacing="2" cellpadding="0">
687    <tr><td valign="top"></td><td valign="top"><em>_name</em>&nbsp;</td><td>The sub-id. </td></tr>
688  </table>
689</dl>
690    </td>
691  </tr>
692</table>
693<a class="anchor" name="4c1a69c77f19dacc2e879926fd092d0c"></a><!-- doxytag: member="FCDEffectPass::WriteToXML" ref="4c1a69c77f19dacc2e879926fd092d0c" args="(xmlNode *parentNode) const " --><p>
694<table class="mdTable" cellpadding="2" cellspacing="0">
695  <tr>
696    <td class="mdRow">
697      <table cellpadding="0" cellspacing="0" border="0">
698        <tr>
699          <td class="md" nowrap valign="top">xmlNode* FCDEffectPass::WriteToXML           </td>
700          <td class="md" valign="top">(&nbsp;</td>
701          <td class="md" nowrap valign="top">xmlNode *&nbsp;</td>
702          <td class="mdname1" valign="top" nowrap> <em>parentNode</em>          </td>
703          <td class="md" valign="top">&nbsp;)&nbsp;</td>
704          <td class="md" nowrap> const</td>
705        </tr>
706      </table>
707    </td>
708  </tr>
709</table>
710<table cellspacing="5" cellpadding="0" border="0">
711  <tr>
712    <td>
713      &nbsp;
714    </td>
715    <td>
716
717<p>
718[INTERNAL] Writes out the effect pass to the given COLLADA XML tree node.
719<p>
720<dl compact><dt><b>Parameters:</b></dt><dd>
721  <table border="0" cellspacing="2" cellpadding="0">
722    <tr><td valign="top"></td><td valign="top"><em>parentNode</em>&nbsp;</td><td>The COLLADA XML parent node in which to insert the effect pass. </td></tr>
723  </table>
724</dl>
725<dl compact><dt><b>Returns:</b></dt><dd>The created element XML tree node. </dd></dl>
726    </td>
727  </tr>
728</table>
729<hr>The documentation for this class was generated from the following file:<ul>
730<li>FCDocument/<a class="el" href="_f_c_d_effect_pass_8h-source.html">FCDEffectPass.h</a></ul>
731<hr size="1"><address style="align: right;"><small>Generated on Fri May 12 16:44:42 2006 for FCollada by&nbsp;
732<a href="http://www.doxygen.org/index.html">
733<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address>
734</body>
735</html>
Note: See TracBrowser for help on using the repository browser.