source: NonGTP/FCollada/Documentation/_f_c_d_effect_parameter_8h-source.html @ 964

Revision 964, 52.9 KB checked in by igarcia, 18 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: FCDocument/FCDEffectParameter.h Source File</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><a href="classes.html"><span>Classes</span></a></li>
14    <li id="current"><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="files.html"><span>File&nbsp;List</span></a></li>
20    <li><a href="globals.html"><span>File&nbsp;Members</span></a></li>
21  </ul></div>
22<h1>FCDocument/FCDEffectParameter.h</h1><a href="_f_c_d_effect_parameter_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span>
23<a name="l00002"></a>00002 <span class="comment">    Copyright (C) 2005-2006 Feeling Software Inc.</span>
24<a name="l00003"></a>00003 <span class="comment">    MIT License: http://www.opensource.org/licenses/mit-license.php</span>
25<a name="l00004"></a>00004 <span class="comment">*/</span>
26<a name="l00005"></a>00005
27<a name="l00012"></a>00012 <span class="preprocessor">#ifndef _FCD_EFFECT_PARAMETER_H_</span>
28<a name="l00013"></a>00013 <span class="preprocessor"></span><span class="preprocessor">#define _FCD_EFFECT_PARAMETER_H_</span>
29<a name="l00014"></a>00014 <span class="preprocessor"></span>
30<a name="l00015"></a>00015 <span class="preprocessor">#include "<a class="code" href="_f_c_d_object_8h.html">FCDocument/FCDObject.h</a>"</span>
31<a name="l00016"></a>00016
32<a name="l00017"></a>00017 <span class="keyword">class </span><a class="code" href="class_f_c_d_effect_pass.html">FCDEffectPass</a>;
33<a name="l00018"></a>00018 <span class="keyword">class </span><a class="code" href="class_f_c_document.html">FCDocument</a>;
34<a name="l00019"></a>00019 <span class="keyword">class </span><a class="code" href="class_f_c_d_effect_parameter_surface.html">FCDEffectParameterSurface</a>;
35<a name="l00020"></a>00020
36<a name="l00036"></a><a class="code" href="class_f_c_d_effect_parameter.html">00036</a> <span class="keyword">class </span>FCOLLADA_EXPORT <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a> : <span class="keyword">public</span> <a class="code" href="class_f_c_d_object.html">FCDObject</a>
37<a name="l00037"></a>00037 {
38<a name="l00038"></a>00038 <span class="keyword">public</span>:
39<a name="l00040"></a><a class="code" href="class_f_c_d_effect_parameter.html#1efe74553d2ed199435085c171743b08">00040</a>     <span class="keyword">enum</span> <a class="code" href="class_f_c_d_effect_parameter.html#1efe74553d2ed199435085c171743b08">Type</a>
40<a name="l00041"></a>00041     {
41<a name="l00042"></a>00042         SAMPLER,
42<a name="l00043"></a>00043         INTEGER,
43<a name="l00044"></a>00044         BOOLEAN,
44<a name="l00045"></a>00045         FLOAT,
45<a name="l00046"></a>00046         FLOAT2,
46<a name="l00047"></a>00047         FLOAT3,
47<a name="l00048"></a>00048         VECTOR,
48<a name="l00049"></a>00049         MATRIX,
49<a name="l00050"></a>00050         STRING,
50<a name="l00051"></a><a class="code" href="class_f_c_d_effect_parameter.html#1efe74553d2ed199435085c171743b08217a1f4ad8b74ced28de295ab6de116b">00051</a>         SURFACE
51<a name="l00052"></a>00052     };
52<a name="l00053"></a>00053
53<a name="l00054"></a>00054 <span class="keyword">private</span>:
54<a name="l00055"></a>00055     <a class="code" href="_f_u_object_type_8h.html#8124b8a8706cd10260f8cd5a7bd8e691">DeclareObjectType</a>;
55<a name="l00056"></a>00056 <span class="keywordtype">bool</span> isGenerator; <span class="comment">// whether this effect parameter structure generates a new value or modifies an existing value (is &lt;newparam&gt;?)</span>
56<a name="l00057"></a>00057     string reference;
57<a name="l00058"></a>00058     string semantic; <span class="comment">// this is a Collada Semantic, not a Cg semantic</span>
58<a name="l00059"></a>00059     
59<a name="l00060"></a>00060     <span class="comment">// [glaforte] These two members should be somewhere else</span>
60<a name="l00061"></a>00061     string bindSymbol; <span class="comment">// this can be used in Cg to bind to the correct variable</span>
61<a name="l00062"></a>00062 <span class="keywordtype">bool</span> isFragment; <span class="comment">// parameter bound to the fragment program or the vertex one</span>
62<a name="l00063"></a>00063
63<a name="l00064"></a>00064 <span class="keyword">public</span>:
64<a name="l00068"></a>00068     <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
65<a name="l00069"></a>00069
66<a name="l00074"></a>00074 <span class="keyword">virtual</span> ~<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>();
67<a name="l00075"></a>00075
68<a name="l00078"></a>00078 <span class="keyword">virtual</span> Type GetType() <span class="keyword">const </span>= 0;
69<a name="l00079"></a>00079
70<a name="l00083"></a><a class="code" href="class_f_c_d_effect_parameter.html#9bf5fa613c3374f7a0ecbf0795df311f">00083</a>     <span class="keyword">const</span> string&amp; GetReference()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> reference; }
71<a name="l00084"></a>00084
72<a name="l00087"></a><a class="code" href="class_f_c_d_effect_parameter.html#6aab49ab02fb2f1b7393fd5e8d929008">00087</a>     <span class="keyword">const</span> string&amp; GetSemantic()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> semantic; }
73<a name="l00088"></a>00088
74<a name="l00091"></a><a class="code" href="class_f_c_d_effect_parameter.html#bc0f7d843a976115d5b413c59700a230">00091</a>     <span class="keywordtype">void</span> SetSemantic(<span class="keyword">const</span> string&amp; _semantic) { semantic = _semantic; }
75<a name="l00092"></a>00092
76<a name="l00097"></a><a class="code" href="class_f_c_d_effect_parameter.html#a77e878bbff4b0d7a85c3f08e46bb206">00097</a>     <span class="keywordtype">bool</span> IsGenerator()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> isGenerator; }
77<a name="l00098"></a>00098
78<a name="l00103"></a><a class="code" href="class_f_c_d_effect_parameter.html#f0270639bc9e73ca45c15fbbebdc8066">00103</a>     <span class="keywordtype">bool</span> IsModifier()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> !isGenerator; }
79<a name="l00104"></a>00104
80<a name="l00109"></a><a class="code" href="class_f_c_d_effect_parameter.html#b621789fd1af2279c712b83efb35f807">00109</a>     <span class="keyword">const</span> string&amp; GetBindSymbol()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> bindSymbol; }
81<a name="l00110"></a>00110
82<a name="l00114"></a><a class="code" href="class_f_c_d_effect_parameter.html#ad32aa763bceb364a6bb7bf9dba8292f">00114</a>     <span class="keywordtype">void</span> SetBindSymbol(<span class="keyword">const</span> string&amp; _bindSymbol) { bindSymbol = _bindSymbol; }
83<a name="l00115"></a>00115
84<a name="l00120"></a><a class="code" href="class_f_c_d_effect_parameter.html#15272d55d87c60f603049caa2b96c4f4">00120</a>     <span class="keywordtype">bool</span> IsFragment()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> isFragment; }
85<a name="l00121"></a>00121
86<a name="l00126"></a><a class="code" href="class_f_c_d_effect_parameter.html#61f99760b80147aabb65d01051509347">00126</a>     <span class="keywordtype">void</span> SetFragment(<span class="keywordtype">bool</span> _isFragment) { isFragment = _isFragment;}
87<a name="l00127"></a>00127
88<a name="l00130"></a>00130 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* Clone() = 0;
89<a name="l00131"></a>00131
90<a name="l00135"></a>00135 <span class="keyword">virtual</span> <span class="keywordtype">void</span> Overwrite(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
91<a name="l00136"></a>00136
92<a name="l00141"></a>00141 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> LoadFromXML(xmlNode* parameterNode);
93<a name="l00142"></a>00142
94<a name="l00146"></a>00146 <span class="keyword">virtual</span> xmlNode* WriteToXML(xmlNode* parentNode) <span class="keyword">const</span>;
95<a name="l00147"></a>00147
96<a name="l00148"></a>00148 <span class="keyword">protected</span>:
97<a name="l00153"></a>00153 <span class="keywordtype">void</span> Clone(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* clone);
98<a name="l00154"></a>00154 };
99<a name="l00155"></a>00155
100<a name="l00164"></a><a class="code" href="class_f_c_d_effect_parameter_sampler.html">00164</a> <span class="keyword">class </span>FCOLLADA_EXPORT FCDEffectParameterSampler : <span class="keyword">public</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>
101<a name="l00165"></a>00165 {
102<a name="l00166"></a>00166 <span class="keyword">public</span>:
103<a name="l00168"></a><a class="code" href="class_f_c_d_effect_parameter_sampler.html#e3a82d31b80b3510bb44a62bd3c34424">00168</a>     <span class="keyword">enum</span> <a class="code" href="class_f_c_d_effect_parameter_sampler.html#e3a82d31b80b3510bb44a62bd3c34424">SamplerType</a>
104<a name="l00169"></a>00169     {
105<a name="l00170"></a>00170         SAMPLER1D,
106<a name="l00171"></a>00171         SAMPLER2D,
107<a name="l00172"></a>00172         SAMPLER3D,
108<a name="l00173"></a>00173         SAMPLERCUBE
109<a name="l00174"></a>00174     };
110<a name="l00175"></a>00175
111<a name="l00176"></a>00176 <span class="keyword">private</span>:
112<a name="l00177"></a>00177     SamplerType samplerType;
113<a name="l00178"></a>00178     string surfaceSid;
114<a name="l00179"></a>00179
115<a name="l00180"></a>00180 <span class="keyword">public</span>:
116<a name="l00184"></a>00184     FCDEffectParameterSampler(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
117<a name="l00185"></a>00185
118<a name="l00190"></a>00190 <span class="keyword">virtual</span> ~FCDEffectParameterSampler();
119<a name="l00191"></a>00191
120<a name="l00194"></a><a class="code" href="class_f_c_d_effect_parameter_sampler.html#b0483ddfcc3c69f12539df9fba36f0d6">00194</a>     <span class="keyword">virtual</span> Type <a class="code" href="class_f_c_d_effect_parameter.html#5858946f333ea4486ca30c4c1b104871">GetType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> SAMPLER; }
121<a name="l00195"></a>00195
122<a name="l00200"></a><a class="code" href="class_f_c_d_effect_parameter_sampler.html#4d3ce176dcb65c56bb1207fbd3968233">00200</a>     <span class="keyword">const</span> <span class="keywordtype">char</span>* GetSurfaceSid()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> surfaceSid.c_str(); }
123<a name="l00201"></a>00201
124<a name="l00204"></a><a class="code" href="class_f_c_d_effect_parameter_sampler.html#ede4bcb8ad021cfc506688b5c1d51bb0">00204</a>     <span class="keywordtype">void</span> SetSurfaceSid(<span class="keyword">const</span> <span class="keywordtype">char</span>* sid) { surfaceSid = sid; }
125<a name="l00205"></a>00205
126<a name="l00208"></a><a class="code" href="class_f_c_d_effect_parameter_sampler.html#07aaa27b521ceaf9fb570eeb713bb41a">00208</a>     <a class="code" href="class_f_c_d_effect_parameter_sampler.html#e3a82d31b80b3510bb44a62bd3c34424">SamplerType</a> GetSamplerType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> samplerType; }
127<a name="l00209"></a>00209
128<a name="l00212"></a><a class="code" href="class_f_c_d_effect_parameter_sampler.html#eb463b7fed44feccf05032b2274c4dcc">00212</a>     <span class="keywordtype">void</span> SetSamplerType(<a class="code" href="class_f_c_d_effect_parameter_sampler.html#e3a82d31b80b3510bb44a62bd3c34424">SamplerType</a> type) { samplerType = type; }
129<a name="l00213"></a>00213
130<a name="l00216"></a>00216 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* <a class="code" href="class_f_c_d_effect_parameter.html#760f178513367b602f7c3363a158b76e">Clone</a>();
131<a name="l00217"></a>00217
132<a name="l00221"></a>00221 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_f_c_d_effect_parameter.html#016be91dbd27ff3c8c30f759f00b8c53">Overwrite</a>(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
133<a name="l00222"></a>00222
134<a name="l00227"></a>00227 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> <a class="code" href="class_f_c_d_effect_parameter.html#c9dacd1e9af15e71f54daf59b3f142fd">LoadFromXML</a>(xmlNode* parameterNode);
135<a name="l00228"></a>00228
136<a name="l00232"></a>00232 <span class="keyword">virtual</span> xmlNode* <a class="code" href="class_f_c_d_effect_parameter.html#71aaa548d040bdae0af136f250262ea5">WriteToXML</a>(xmlNode* parentNode) <span class="keyword">const</span>;
137<a name="l00233"></a>00233 };
138<a name="l00234"></a>00234
139<a name="l00239"></a><a class="code" href="class_f_c_d_effect_parameter_int.html">00239</a> <span class="keyword">class </span>FCOLLADA_EXPORT FCDEffectParameterInt : <span class="keyword">public</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>
140<a name="l00240"></a>00240 {
141<a name="l00241"></a>00241 <span class="keyword">private</span>:
142<a name="l00242"></a>00242 <span class="keywordtype">int</span> value;
143<a name="l00243"></a>00243
144<a name="l00244"></a>00244 <span class="keyword">public</span>:
145<a name="l00248"></a>00248     FCDEffectParameterInt(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
146<a name="l00249"></a>00249
147<a name="l00254"></a>00254 <span class="keyword">virtual</span> ~FCDEffectParameterInt();
148<a name="l00255"></a>00255
149<a name="l00258"></a><a class="code" href="class_f_c_d_effect_parameter_int.html#fc360d159fbb45443c3f8dcb85ad3d45">00258</a>     <span class="keyword">virtual</span> Type <a class="code" href="class_f_c_d_effect_parameter.html#5858946f333ea4486ca30c4c1b104871">GetType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> INTEGER; }
150<a name="l00259"></a>00259
151<a name="l00262"></a><a class="code" href="class_f_c_d_effect_parameter_int.html#3fa597a3157ca294e8a7f3ca6bd3df5c">00262</a>     <span class="keywordtype">int</span> GetValue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value; }
152<a name="l00263"></a>00263
153<a name="l00266"></a><a class="code" href="class_f_c_d_effect_parameter_int.html#893bf135b594b52d37de7b3bdebe65a3">00266</a>     <span class="keywordtype">void</span> SetValue(<span class="keywordtype">int</span> _value) { value = _value; }
154<a name="l00267"></a>00267
155<a name="l00270"></a>00270 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* <a class="code" href="class_f_c_d_effect_parameter.html#760f178513367b602f7c3363a158b76e">Clone</a>();
156<a name="l00271"></a>00271
157<a name="l00275"></a>00275 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_f_c_d_effect_parameter.html#016be91dbd27ff3c8c30f759f00b8c53">Overwrite</a>(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
158<a name="l00276"></a>00276
159<a name="l00281"></a>00281 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> <a class="code" href="class_f_c_d_effect_parameter.html#c9dacd1e9af15e71f54daf59b3f142fd">LoadFromXML</a>(xmlNode* parameterNode);
160<a name="l00282"></a>00282
161<a name="l00286"></a>00286 <span class="keyword">virtual</span> xmlNode* <a class="code" href="class_f_c_d_effect_parameter.html#71aaa548d040bdae0af136f250262ea5">WriteToXML</a>(xmlNode* parentNode) <span class="keyword">const</span>;
162<a name="l00287"></a>00287 };
163<a name="l00288"></a>00288
164<a name="l00293"></a><a class="code" href="class_f_c_d_effect_parameter_bool.html">00293</a> <span class="keyword">class </span>FCOLLADA_EXPORT FCDEffectParameterBool : <span class="keyword">public</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>
165<a name="l00294"></a>00294 {
166<a name="l00295"></a>00295 <span class="keyword">private</span>:
167<a name="l00296"></a>00296 <span class="keywordtype">bool</span> value;
168<a name="l00297"></a>00297
169<a name="l00298"></a>00298 <span class="keyword">public</span>:
170<a name="l00302"></a>00302     FCDEffectParameterBool(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
171<a name="l00303"></a>00303
172<a name="l00308"></a>00308 <span class="keyword">virtual</span> ~FCDEffectParameterBool();
173<a name="l00309"></a>00309
174<a name="l00312"></a><a class="code" href="class_f_c_d_effect_parameter_bool.html#9dcd9b8cfdd28ac8ed1d077a06f310c3">00312</a>     <span class="keyword">virtual</span> Type <a class="code" href="class_f_c_d_effect_parameter.html#5858946f333ea4486ca30c4c1b104871">GetType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> BOOLEAN; }
175<a name="l00313"></a>00313
176<a name="l00316"></a><a class="code" href="class_f_c_d_effect_parameter_bool.html#8e00c88e7a2c2c1e48f27e2d7da4a7b8">00316</a>     <span class="keywordtype">bool</span> GetValue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value; }
177<a name="l00317"></a>00317
178<a name="l00320"></a><a class="code" href="class_f_c_d_effect_parameter_bool.html#eda6e4ec8451cf3df18bbd91c5c34cee">00320</a>     <span class="keywordtype">void</span> SetValue(<span class="keywordtype">bool</span> _value) { value = _value; }
179<a name="l00321"></a>00321
180<a name="l00324"></a>00324 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* <a class="code" href="class_f_c_d_effect_parameter.html#760f178513367b602f7c3363a158b76e">Clone</a>();
181<a name="l00325"></a>00325
182<a name="l00329"></a>00329 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_f_c_d_effect_parameter.html#016be91dbd27ff3c8c30f759f00b8c53">Overwrite</a>(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
183<a name="l00330"></a>00330
184<a name="l00335"></a>00335 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> <a class="code" href="class_f_c_d_effect_parameter.html#c9dacd1e9af15e71f54daf59b3f142fd">LoadFromXML</a>(xmlNode* parameterNode);
185<a name="l00336"></a>00336
186<a name="l00340"></a>00340 <span class="keyword">virtual</span> xmlNode* <a class="code" href="class_f_c_d_effect_parameter.html#71aaa548d040bdae0af136f250262ea5">WriteToXML</a>(xmlNode* parentNode) <span class="keyword">const</span>;
187<a name="l00341"></a>00341 };
188<a name="l00342"></a>00342
189<a name="l00347"></a><a class="code" href="class_f_c_d_effect_parameter_string.html">00347</a> <span class="keyword">class </span>FCOLLADA_EXPORT FCDEffectParameterString : <span class="keyword">public</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>
190<a name="l00348"></a>00348 {
191<a name="l00349"></a>00349 <span class="keyword">private</span>:
192<a name="l00350"></a>00350     string value;
193<a name="l00351"></a>00351
194<a name="l00352"></a>00352 <span class="keyword">public</span>:
195<a name="l00356"></a>00356     FCDEffectParameterString(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
196<a name="l00357"></a>00357
197<a name="l00362"></a>00362 <span class="keyword">virtual</span> ~FCDEffectParameterString();
198<a name="l00363"></a>00363
199<a name="l00366"></a><a class="code" href="class_f_c_d_effect_parameter_string.html#a9b5be86f3ea1f3f88bdaa37b14faeb9">00366</a>     <span class="keyword">virtual</span> Type <a class="code" href="class_f_c_d_effect_parameter.html#5858946f333ea4486ca30c4c1b104871">GetType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> STRING; }
200<a name="l00367"></a>00367
201<a name="l00370"></a><a class="code" href="class_f_c_d_effect_parameter_string.html#dffefe0114b509a38427cd29bd3c8d90">00370</a>     <span class="keyword">const</span> string&amp; GetValue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value; }
202<a name="l00371"></a>00371
203<a name="l00374"></a><a class="code" href="class_f_c_d_effect_parameter_string.html#41d53be2b9c51e1cbe3e60b840403d38">00374</a>     <span class="keywordtype">void</span> SetValue(<span class="keyword">const</span> string&amp; _value) { value = _value; }
204<a name="l00375"></a>00375
205<a name="l00378"></a>00378 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* <a class="code" href="class_f_c_d_effect_parameter.html#760f178513367b602f7c3363a158b76e">Clone</a>();
206<a name="l00379"></a>00379
207<a name="l00383"></a>00383 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_f_c_d_effect_parameter.html#016be91dbd27ff3c8c30f759f00b8c53">Overwrite</a>(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
208<a name="l00384"></a>00384
209<a name="l00389"></a>00389 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> <a class="code" href="class_f_c_d_effect_parameter.html#c9dacd1e9af15e71f54daf59b3f142fd">LoadFromXML</a>(xmlNode* parameterNode);
210<a name="l00390"></a>00390
211<a name="l00394"></a>00394 <span class="keyword">virtual</span> xmlNode* <a class="code" href="class_f_c_d_effect_parameter.html#71aaa548d040bdae0af136f250262ea5">WriteToXML</a>(xmlNode* parentNode) <span class="keyword">const</span>;
212<a name="l00395"></a>00395 };
213<a name="l00396"></a>00396
214<a name="l00402"></a><a class="code" href="class_f_c_d_effect_parameter_float.html">00402</a> <span class="keyword">class </span>FCOLLADA_EXPORT FCDEffectParameterFloat : <span class="keyword">public</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>
215<a name="l00403"></a>00403 {
216<a name="l00404"></a>00404 <span class="keyword">public</span>:
217<a name="l00406"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#a28b191128c4dafc4d417347450b356d">00406</a>     <span class="keyword">enum</span> <a class="code" href="class_f_c_d_effect_parameter_float.html#a28b191128c4dafc4d417347450b356d">FloatType</a>
218<a name="l00407"></a>00407     {
219<a name="l00408"></a>00408         FLOAT,
220<a name="l00409"></a>00409         HALF
221<a name="l00410"></a>00410     };
222<a name="l00411"></a>00411
223<a name="l00412"></a>00412 <span class="keyword">private</span>:
224<a name="l00413"></a>00413     FloatType floatType;
225<a name="l00414"></a>00414 <span class="keywordtype">float</span> value;
226<a name="l00415"></a>00415 <span class="keywordtype">float</span> <a class="code" href="_f_utils_8h.html#c6afabdc09a49a433ee19d8a9486056d">min</a>;
227<a name="l00416"></a>00416 <span class="keywordtype">float</span> <a class="code" href="_f_utils_8h.html#ffe776513b24d84b39af8ab0930fef7f">max</a>;
228<a name="l00417"></a>00417
229<a name="l00418"></a>00418 <span class="keyword">public</span>:
230<a name="l00422"></a>00422     FCDEffectParameterFloat(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
231<a name="l00423"></a>00423
232<a name="l00428"></a>00428 <span class="keyword">virtual</span> ~FCDEffectParameterFloat();
233<a name="l00429"></a>00429
234<a name="l00432"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#a5f935f8cce027dabe4f817c5fc9f79f">00432</a>     <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html#1efe74553d2ed199435085c171743b08">FCDEffectParameter::Type</a> <a class="code" href="class_f_c_d_effect_parameter.html#5858946f333ea4486ca30c4c1b104871">GetType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="class_f_c_d_effect_parameter.html#1efe74553d2ed199435085c171743b0887e8166fffd6cc3a8d39671b1346e469">FCDEffectParameter::FLOAT</a>; }
235<a name="l00433"></a>00433
236<a name="l00436"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#871d4867364386afcde565e56e1234d5">00436</a>     <a class="code" href="class_f_c_d_effect_parameter_float.html#a28b191128c4dafc4d417347450b356d">FloatType</a> GetFloatType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> floatType; }
237<a name="l00437"></a>00437
238<a name="l00440"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#30b3d806cda498f5987262f1b4f7c33c">00440</a>     <span class="keywordtype">void</span> SetFloatType(<a class="code" href="class_f_c_d_effect_parameter_float.html#a28b191128c4dafc4d417347450b356d">FloatType</a> type) { floatType = type; }
239<a name="l00441"></a>00441
240<a name="l00444"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#e0b4f034d06e8ae1609fb301b512874c">00444</a>     <span class="keywordtype">float</span>&amp; GetValue() { <span class="keywordflow">return</span> value; }
241<a name="l00445"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#e9c77151f45e853d0e58401d863ee53d">00445</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValue()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value; }
242<a name="l00449"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#dd764ca3b7a2e494d385c9887d69d4d4">00449</a>     <span class="keywordtype">void</span> SetValue(<span class="keywordtype">float</span> _value) { value = _value; }
243<a name="l00450"></a>00450
244<a name="l00454"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#ad913f2f0dbf18e84ca8a26b064dbf3e">00454</a>     <span class="keywordtype">float</span> GetMin()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="_f_utils_8h.html#c6afabdc09a49a433ee19d8a9486056d">min</a>; }
245<a name="l00455"></a>00455
246<a name="l00459"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#81d4ec6ac94030236c333207b5ac56fd">00459</a>     <span class="keywordtype">void</span> SetMin(<span class="keywordtype">float</span> _min) { <a class="code" href="_f_utils_8h.html#c6afabdc09a49a433ee19d8a9486056d">min</a> = _min; }
247<a name="l00460"></a>00460
248<a name="l00464"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#8cf89f4f716af201787bc75039b107fc">00464</a>     <span class="keywordtype">float</span> GetMax()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="_f_utils_8h.html#ffe776513b24d84b39af8ab0930fef7f">max</a>; }
249<a name="l00465"></a>00465
250<a name="l00469"></a><a class="code" href="class_f_c_d_effect_parameter_float.html#75d8d2de0402246672ba1cfe817cd85c">00469</a>     <span class="keywordtype">void</span> SetMax(<span class="keywordtype">float</span> _max) { <a class="code" href="_f_utils_8h.html#ffe776513b24d84b39af8ab0930fef7f">max</a> = _max; }
251<a name="l00470"></a>00470
252<a name="l00473"></a>00473 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* <a class="code" href="class_f_c_d_effect_parameter.html#760f178513367b602f7c3363a158b76e">Clone</a>();
253<a name="l00474"></a>00474
254<a name="l00478"></a>00478 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_f_c_d_effect_parameter.html#016be91dbd27ff3c8c30f759f00b8c53">Overwrite</a>(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
255<a name="l00479"></a>00479
256<a name="l00484"></a>00484 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> <a class="code" href="class_f_c_d_effect_parameter.html#c9dacd1e9af15e71f54daf59b3f142fd">LoadFromXML</a>(xmlNode* parameterNode);
257<a name="l00485"></a>00485
258<a name="l00489"></a>00489 <span class="keyword">virtual</span> xmlNode* <a class="code" href="class_f_c_d_effect_parameter.html#71aaa548d040bdae0af136f250262ea5">WriteToXML</a>(xmlNode* parentNode) <span class="keyword">const</span>;
259<a name="l00490"></a>00490 };
260<a name="l00491"></a>00491
261<a name="l00497"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html">00497</a> <span class="keyword">class </span>FCOLLADA_EXPORT FCDEffectParameterFloat2 : <span class="keyword">public</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>
262<a name="l00498"></a>00498 {
263<a name="l00499"></a>00499 <span class="keyword">public</span>:
264<a name="l00501"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#77e4ebdfcf0de9efb879c02ed5286041">00501</a>     <span class="keyword">enum</span> <a class="code" href="class_f_c_d_effect_parameter_float2.html#77e4ebdfcf0de9efb879c02ed5286041">FloatType</a>
265<a name="l00502"></a>00502     {
266<a name="l00503"></a>00503         FLOAT,
267<a name="l00504"></a>00504         HALF
268<a name="l00505"></a>00505     };
269<a name="l00506"></a>00506
270<a name="l00507"></a>00507 <span class="keyword">private</span>:
271<a name="l00508"></a>00508     FloatType floatType;
272<a name="l00509"></a>00509 <span class="keywordtype">float</span> value_x;
273<a name="l00510"></a>00510 <span class="keywordtype">float</span> value_y;
274<a name="l00511"></a>00511
275<a name="l00512"></a>00512 <span class="keyword">public</span>:
276<a name="l00516"></a>00516     FCDEffectParameterFloat2(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
277<a name="l00517"></a>00517
278<a name="l00522"></a>00522 <span class="keyword">virtual</span> ~FCDEffectParameterFloat2();
279<a name="l00523"></a>00523
280<a name="l00526"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#ffc19911b3553e8a495004123b1df4aa">00526</a>     <span class="keyword">virtual</span> Type <a class="code" href="class_f_c_d_effect_parameter.html#5858946f333ea4486ca30c4c1b104871">GetType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FLOAT2; }
281<a name="l00527"></a>00527
282<a name="l00530"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#96d127825bdb339605985bbc4038f084">00530</a>     <a class="code" href="class_f_c_d_effect_parameter_float2.html#77e4ebdfcf0de9efb879c02ed5286041">FloatType</a> GetFloatType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> floatType; }
283<a name="l00531"></a>00531
284<a name="l00534"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#2e78f91c6b7e9d163e24d1c35f6fac51">00534</a>     <span class="keywordtype">void</span> SetFloatType(<a class="code" href="class_f_c_d_effect_parameter_float2.html#77e4ebdfcf0de9efb879c02ed5286041">FloatType</a> type) { floatType = type; }
285<a name="l00535"></a>00535
286<a name="l00538"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#991fa2c00cfaa0fcd1ba896d95fcd685">00538</a>     <span class="keywordtype">float</span>&amp; GetValueX() { <span class="keywordflow">return</span> value_x; }
287<a name="l00539"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#e0921239eb33a8daa8a3c04e1e206072">00539</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValueX()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_x; }
288<a name="l00543"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#dc9db3c8ea7d2dbbcde7d81b8ce9f45e">00543</a>     <span class="keywordtype">void</span> SetValueX(<span class="keywordtype">float</span> value) { value_x = value; }
289<a name="l00544"></a>00544
290<a name="l00547"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#3c4661be7f1039cdbf98d2784d996a8b">00547</a>     <span class="keywordtype">float</span>&amp; GetValueY() { <span class="keywordflow">return</span> value_y; }
291<a name="l00548"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#d9431e6e2c0a11d8875c11123856b738">00548</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValueY()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_y; }
292<a name="l00552"></a><a class="code" href="class_f_c_d_effect_parameter_float2.html#037c036e879e5201f8f05b99b26f286f">00552</a>     <span class="keywordtype">void</span> SetValueY(<span class="keywordtype">float</span> value) { value_y = value; }
293<a name="l00553"></a>00553
294<a name="l00556"></a>00556 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* <a class="code" href="class_f_c_d_effect_parameter.html#760f178513367b602f7c3363a158b76e">Clone</a>();
295<a name="l00557"></a>00557
296<a name="l00561"></a>00561 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_f_c_d_effect_parameter.html#016be91dbd27ff3c8c30f759f00b8c53">Overwrite</a>(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
297<a name="l00562"></a>00562
298<a name="l00567"></a>00567 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> <a class="code" href="class_f_c_d_effect_parameter.html#c9dacd1e9af15e71f54daf59b3f142fd">LoadFromXML</a>(xmlNode* parameterNode);
299<a name="l00568"></a>00568
300<a name="l00572"></a>00572 <span class="keyword">virtual</span> xmlNode* <a class="code" href="class_f_c_d_effect_parameter.html#71aaa548d040bdae0af136f250262ea5">WriteToXML</a>(xmlNode* parentNode) <span class="keyword">const</span>;
301<a name="l00573"></a>00573 };
302<a name="l00574"></a>00574
303<a name="l00580"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html">00580</a> <span class="keyword">class </span>FCOLLADA_EXPORT FCDEffectParameterFloat3 : <span class="keyword">public</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>
304<a name="l00581"></a>00581 {
305<a name="l00582"></a>00582 <span class="keyword">public</span>:
306<a name="l00584"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#7e8ea846f43dd9dfdcd68de45e3add58">00584</a>     <span class="keyword">enum</span> <a class="code" href="class_f_c_d_effect_parameter_float3.html#7e8ea846f43dd9dfdcd68de45e3add58">FloatType</a>
307<a name="l00585"></a>00585     {
308<a name="l00586"></a>00586         FLOAT,
309<a name="l00587"></a>00587         HALF
310<a name="l00588"></a>00588     };
311<a name="l00589"></a>00589
312<a name="l00590"></a>00590 <span class="keyword">private</span>:
313<a name="l00591"></a>00591     FloatType floatType;
314<a name="l00592"></a>00592 <a class="code" href="class_f_m_vector3.html">FMVector3</a> value;
315<a name="l00593"></a>00593
316<a name="l00594"></a>00594 <span class="keyword">public</span>:
317<a name="l00598"></a>00598     FCDEffectParameterFloat3(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
318<a name="l00599"></a>00599
319<a name="l00604"></a>00604 <span class="keyword">virtual</span> ~FCDEffectParameterFloat3();
320<a name="l00605"></a>00605
321<a name="l00608"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#6c9681855b3fd4c4a7677bee899bbcbe">00608</a>     <span class="keyword">virtual</span> Type <a class="code" href="class_f_c_d_effect_parameter.html#5858946f333ea4486ca30c4c1b104871">GetType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> FLOAT3; }
322<a name="l00609"></a>00609
323<a name="l00612"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#37e642ef42a608b3ab4a24fa6fdef1ee">00612</a>     <a class="code" href="class_f_c_d_effect_parameter_float3.html#7e8ea846f43dd9dfdcd68de45e3add58">FloatType</a> GetFloatType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> floatType; }
324<a name="l00613"></a>00613
325<a name="l00616"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#50bac58e8dba487ae4ed0e5b21e8907a">00616</a>     <span class="keywordtype">void</span> SetFloatType(<a class="code" href="class_f_c_d_effect_parameter_float3.html#7e8ea846f43dd9dfdcd68de45e3add58">FloatType</a> type) { floatType = type; }
326<a name="l00617"></a>00617
327<a name="l00620"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#73027172d6d08c91dcb2d2c24d3ea942">00620</a>     <span class="keywordtype">float</span>&amp; GetValueX() { <span class="keywordflow">return</span> value.x; }
328<a name="l00621"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#087e079035c16f5cbd9c75651838c0df">00621</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValueX()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value.x; }
329<a name="l00625"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#6e858e18e5979ccb42708de361f3b36a">00625</a>     <span class="keywordtype">void</span> SetValueX(<span class="keywordtype">float</span> _value) { value.x = _value; }
330<a name="l00626"></a>00626
331<a name="l00629"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#4a1aac0da0e01d4fb2a43175245232b8">00629</a>     <span class="keywordtype">float</span>&amp; GetValueY() { <span class="keywordflow">return</span> value.y; }
332<a name="l00630"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#f2e2cdd3dee4c7429d0ba7fef771b1e4">00630</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValueY()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value.y; }
333<a name="l00634"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#0c1a7ec1e8634e5ae9e7d317c898d8f4">00634</a>     <span class="keywordtype">void</span> SetValueY(<span class="keywordtype">float</span> _value) { value.y = _value; }
334<a name="l00635"></a>00635
335<a name="l00638"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#067ae2377443973bb5dca94d2768198e">00638</a>     <span class="keywordtype">float</span>&amp; GetValueZ() { <span class="keywordflow">return</span> value.z; }
336<a name="l00639"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#de3cb32aaa4b3ef6974fcfa45a88cdb5">00639</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValueZ()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value.z; }
337<a name="l00643"></a><a class="code" href="class_f_c_d_effect_parameter_float3.html#28c3a1cda5c269229cff87f1edac6acd">00643</a>     <span class="keywordtype">void</span> SetValueZ(<span class="keywordtype">float</span> _value) { value.z = _value; }
338<a name="l00644"></a>00644
339<a name="l00647"></a>00647 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* <a class="code" href="class_f_c_d_effect_parameter.html#760f178513367b602f7c3363a158b76e">Clone</a>();
340<a name="l00648"></a>00648
341<a name="l00652"></a>00652 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_f_c_d_effect_parameter.html#016be91dbd27ff3c8c30f759f00b8c53">Overwrite</a>(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
342<a name="l00653"></a>00653
343<a name="l00658"></a>00658 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> <a class="code" href="class_f_c_d_effect_parameter.html#c9dacd1e9af15e71f54daf59b3f142fd">LoadFromXML</a>(xmlNode* parameterNode);
344<a name="l00659"></a>00659
345<a name="l00663"></a>00663 <span class="keyword">virtual</span> xmlNode* <a class="code" href="class_f_c_d_effect_parameter.html#71aaa548d040bdae0af136f250262ea5">WriteToXML</a>(xmlNode* parentNode) <span class="keyword">const</span>;
346<a name="l00664"></a>00664 };
347<a name="l00665"></a>00665
348<a name="l00671"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html">00671</a> <span class="keyword">class </span>FCOLLADA_EXPORT FCDEffectParameterVector : <span class="keyword">public</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>
349<a name="l00672"></a>00672 {
350<a name="l00673"></a>00673 <span class="keyword">public</span>:
351<a name="l00675"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#035e2c3691618620389142cc66328409">00675</a>     <span class="keyword">enum</span> <a class="code" href="class_f_c_d_effect_parameter_vector.html#035e2c3691618620389142cc66328409">FloatType</a>
352<a name="l00676"></a>00676     {
353<a name="l00677"></a>00677         FLOAT,
354<a name="l00678"></a>00678         HALF
355<a name="l00679"></a>00679     };
356<a name="l00680"></a>00680
357<a name="l00681"></a>00681 <span class="keyword">private</span>:
358<a name="l00682"></a>00682     FloatType floatType;
359<a name="l00683"></a>00683 <span class="keywordtype">float</span> <a class="code" href="classvector.html">vector</a>[4];
360<a name="l00684"></a>00684
361<a name="l00685"></a>00685 <span class="keyword">public</span>:
362<a name="l00689"></a>00689     FCDEffectParameterVector(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
363<a name="l00690"></a>00690
364<a name="l00695"></a>00695 <span class="keyword">virtual</span> ~FCDEffectParameterVector();
365<a name="l00696"></a>00696
366<a name="l00699"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#9390bbea2590e2d49ad2341925b069f9">00699</a>     <span class="keyword">virtual</span> Type <a class="code" href="class_f_c_d_effect_parameter.html#5858946f333ea4486ca30c4c1b104871">GetType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> VECTOR; }
367<a name="l00700"></a>00700
368<a name="l00703"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#ce40e7aebb51aaefae2ca9d89e9d7d42">00703</a>     <a class="code" href="class_f_c_d_effect_parameter_vector.html#035e2c3691618620389142cc66328409">FloatType</a> GetFloatType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> floatType; }
369<a name="l00704"></a>00704
370<a name="l00707"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#25f61f4cf97d47b4125fd6e81b385e3f">00707</a>     <span class="keywordtype">void</span> SetFloatType(<a class="code" href="class_f_c_d_effect_parameter_vector.html#035e2c3691618620389142cc66328409">FloatType</a> type) { floatType = type; }
371<a name="l00708"></a>00708
372<a name="l00711"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#f69c51702c7788718f61cfef5cb8f9fb">00711</a>     <span class="keywordtype">float</span>* GetVector() { <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>; }
373<a name="l00712"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#f20dd0549e79c4b7103f247028a6b676">00712</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>* GetVector()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>; }
374<a name="l00716"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#e01dcf5ad6b0320798658344d08a5bba">00716</a>     <span class="keywordtype">float</span>&amp; GetValueX() { <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>[0]; }
375<a name="l00717"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#c669d4a8c411d591ccfd920f73428ae9">00717</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValueX()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>[0]; }
376<a name="l00721"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#c94e798b117bd9719b694682a4af9b5a">00721</a>     <span class="keywordtype">void</span> SetValueX(<span class="keywordtype">float</span> _value) { <a class="code" href="classvector.html">vector</a>[0] = _value; }
377<a name="l00722"></a>00722
378<a name="l00725"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#af82e40c02e70bfb866fd840e2a592ac">00725</a>     <span class="keywordtype">float</span>&amp; GetValueY() { <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>[1]; }
379<a name="l00726"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#02608c94122d2664ea4490952101368b">00726</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValueY()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>[1]; }
380<a name="l00730"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#17fcff544e0d24166f0ab4c4056fd0cc">00730</a>     <span class="keywordtype">void</span> SetValueY(<span class="keywordtype">float</span> _value) { <a class="code" href="classvector.html">vector</a>[1] = _value; }
381<a name="l00731"></a>00731
382<a name="l00734"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#3389e45d04f514d9b35e078cac50027a">00734</a>     <span class="keywordtype">float</span>&amp; GetValueZ() { <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>[2]; }
383<a name="l00735"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#ed673a069ecdda76fd13ac83afb7cc32">00735</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValueZ()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>[2]; }
384<a name="l00739"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#24d41da4d2c00e6815b2021174148ad0">00739</a>     <span class="keywordtype">void</span> SetValueZ(<span class="keywordtype">float</span> _value) { <a class="code" href="classvector.html">vector</a>[2] = _value; }
385<a name="l00740"></a>00740
386<a name="l00743"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#061736a2057f662a29e541a26109e6cc">00743</a>     <span class="keywordtype">float</span>&amp; GetValueW() { <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>[3]; }
387<a name="l00744"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#6dab0b3e7d24af8a014621d2af91eca6">00744</a>     <span class="keyword">const</span> <span class="keywordtype">float</span>&amp; GetValueW()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classvector.html">vector</a>[3]; }
388<a name="l00748"></a><a class="code" href="class_f_c_d_effect_parameter_vector.html#56673929a4f3cae4510fd65230bd3692">00748</a>     <span class="keywordtype">void</span> SetValueW(<span class="keywordtype">float</span> _value) { <a class="code" href="classvector.html">vector</a>[3] = _value; }
389<a name="l00749"></a>00749
390<a name="l00752"></a>00752 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* <a class="code" href="class_f_c_d_effect_parameter.html#760f178513367b602f7c3363a158b76e">Clone</a>();
391<a name="l00753"></a>00753
392<a name="l00757"></a>00757 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_f_c_d_effect_parameter.html#016be91dbd27ff3c8c30f759f00b8c53">Overwrite</a>(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
393<a name="l00758"></a>00758
394<a name="l00763"></a>00763 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> <a class="code" href="class_f_c_d_effect_parameter.html#c9dacd1e9af15e71f54daf59b3f142fd">LoadFromXML</a>(xmlNode* parameterNode);
395<a name="l00764"></a>00764
396<a name="l00768"></a>00768 <span class="keyword">virtual</span> xmlNode* <a class="code" href="class_f_c_d_effect_parameter.html#71aaa548d040bdae0af136f250262ea5">WriteToXML</a>(xmlNode* parentNode) <span class="keyword">const</span>;
397<a name="l00769"></a>00769 };
398<a name="l00770"></a>00770
399<a name="l00776"></a><a class="code" href="class_f_c_d_effect_parameter_matrix.html">00776</a> <span class="keyword">class </span>FCOLLADA_EXPORT FCDEffectParameterMatrix : <span class="keyword">public</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>
400<a name="l00777"></a>00777 {
401<a name="l00778"></a>00778 <span class="keyword">public</span>:
402<a name="l00780"></a><a class="code" href="class_f_c_d_effect_parameter_matrix.html#45c68f5f565f4c43b364d15475609c2c">00780</a>     <span class="keyword">enum</span> <a class="code" href="class_f_c_d_effect_parameter_matrix.html#45c68f5f565f4c43b364d15475609c2c">FloatType</a>
403<a name="l00781"></a>00781     {
404<a name="l00782"></a>00782         FLOAT,
405<a name="l00783"></a>00783         HALF
406<a name="l00784"></a>00784     };
407<a name="l00785"></a>00785
408<a name="l00786"></a>00786 <span class="keyword">private</span>:
409<a name="l00787"></a>00787     FloatType floatType;
410<a name="l00788"></a>00788 <a class="code" href="class_f_m_matrix44.html">FMMatrix44</a> matrix;
411<a name="l00789"></a>00789
412<a name="l00790"></a>00790 <span class="keyword">public</span>:
413<a name="l00794"></a>00794     FCDEffectParameterMatrix(<a class="code" href="class_f_c_document.html">FCDocument</a>* document);
414<a name="l00795"></a>00795
415<a name="l00800"></a>00800 <span class="keyword">virtual</span> ~FCDEffectParameterMatrix();
416<a name="l00801"></a>00801
417<a name="l00804"></a><a class="code" href="class_f_c_d_effect_parameter_matrix.html#54ef3af47e1e0f2c789cc02d2114171a">00804</a>     <span class="keyword">virtual</span> Type <a class="code" href="class_f_c_d_effect_parameter.html#5858946f333ea4486ca30c4c1b104871">GetType</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> MATRIX; }
418<a name="l00805"></a>00805
419<a name="l00808"></a><a class="code" href="class_f_c_d_effect_parameter_matrix.html#6935aa40b166e07a7f2577281c53ae2d">00808</a>     <a class="code" href="class_f_c_d_effect_parameter_matrix.html#45c68f5f565f4c43b364d15475609c2c">FloatType</a> GetFloatType()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> floatType; }
420<a name="l00809"></a>00809
421<a name="l00812"></a><a class="code" href="class_f_c_d_effect_parameter_matrix.html#af7fb79d83700f1e8a638887b8120942">00812</a>     <span class="keywordtype">void</span> SetFloatType(<a class="code" href="class_f_c_d_effect_parameter_matrix.html#45c68f5f565f4c43b364d15475609c2c">FloatType</a> type) { floatType = type; }
422<a name="l00813"></a>00813
423<a name="l00816"></a><a class="code" href="class_f_c_d_effect_parameter_matrix.html#3696eabbf1ac501a09447bbc157560f0">00816</a>     <a class="code" href="class_f_m_matrix44.html">FMMatrix44</a>&amp; GetMatrix() { <span class="keywordflow">return</span> matrix; }
424<a name="l00817"></a><a class="code" href="class_f_c_d_effect_parameter_matrix.html#ba7efb2c4e540f4f1169a5a27df7f63f">00817</a>     <span class="keyword">const</span> <a class="code" href="class_f_m_matrix44.html">FMMatrix44</a>&amp; GetMatrix()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> matrix; }
425<a name="l00821"></a><a class="code" href="class_f_c_d_effect_parameter_matrix.html#51209138c35abd7bba13c2a3a3ac05e4">00821</a>     <span class="keywordtype">void</span> SetMatrix(<span class="keyword">const</span> <a class="code" href="class_f_m_matrix44.html">FMMatrix44</a>&amp; mx) { matrix = mx; }
426<a name="l00822"></a>00822
427<a name="l00825"></a>00825 <span class="keyword">virtual</span> <a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* <a class="code" href="class_f_c_d_effect_parameter.html#760f178513367b602f7c3363a158b76e">Clone</a>();
428<a name="l00826"></a>00826
429<a name="l00830"></a>00830 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_f_c_d_effect_parameter.html#016be91dbd27ff3c8c30f759f00b8c53">Overwrite</a>(<a class="code" href="class_f_c_d_effect_parameter.html">FCDEffectParameter</a>* target);
430<a name="l00831"></a>00831
431<a name="l00836"></a>00836 <span class="keyword">virtual</span> <a class="code" href="class_f_u_status.html">FUStatus</a> <a class="code" href="class_f_c_d_effect_parameter.html#c9dacd1e9af15e71f54daf59b3f142fd">LoadFromXML</a>(xmlNode* parameterNode);
432<a name="l00837"></a>00837
433<a name="l00841"></a>00841 <span class="keyword">virtual</span> xmlNode* <a class="code" href="class_f_c_d_effect_parameter.html#71aaa548d040bdae0af136f250262ea5">WriteToXML</a>(xmlNode* parentNode) <span class="keyword">const</span>;
434<a name="l00842"></a>00842 };
435<a name="l00843"></a>00843
436<a name="l00844"></a>00844 <span class="preprocessor">#endif // _FCD_EFFECT_PARAMETER_H_</span>
437<a name="l00845"></a>00845 <span class="preprocessor"></span>
438</pre></div><hr size="1"><address style="align: right;"><small>Generated on Fri May 12 16:44:38 2006 for FCollada by&nbsp;
439<a href="http://www.doxygen.org/index.html">
440<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6-NO </small></address>
441</body>
442</html>
Note: See TracBrowser for help on using the repository browser.