<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>Irrlicht 3D Engine: IColladaMeshWriter.h Source File</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css" /> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); </script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/search.js"></script> <script type="text/javascript"> $(document).ready(function() { searchBox.OnSelectItem(0); }); </script> </head> <body> <div id="top"><!-- do not remove this div! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectlogo"><img alt="Logo" src="irrlichtlogo.png"/></td> <td style="padding-left: 0.5em;"> <div id="projectname">Irrlicht 3D Engine </div> </td> <td> <div id="MSearchBox" class="MSearchBoxInactive"> <span class="left"> <img id="MSearchSelect" src="search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> </span><span class="right"> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </span> </div> </td> </tr> </tbody> </table> </div> <!-- Generated by Doxygen 1.7.5.1 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> <script type="text/javascript" src="dynsections.js"></script> </div> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> initNavTree('_i_collada_mesh_writer_8h.html',''); </script> <div id="doc-content"> <div class="header"> <div class="headertitle"> <div class="title">IColladaMeshWriter.h</div> </div> </div> <div class="contents"> <a href="_i_collada_mesh_writer_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">// Copyright (C) 2002-2012 Nikolaus Gebhardt</span> <a name="l00002"></a>00002 <span class="comment">// This file is part of the "Irrlicht Engine".</span> <a name="l00003"></a>00003 <span class="comment">// For conditions of distribution and use, see copyright notice in irrlicht.h</span> <a name="l00004"></a>00004 <a name="l00005"></a>00005 <span class="preprocessor">#ifndef __IRR_I_COLLADA_MESH_WRITER_H_INCLUDED__</span> <a name="l00006"></a>00006 <span class="preprocessor"></span><span class="preprocessor">#define __IRR_I_COLLADA_MESH_WRITER_H_INCLUDED__</span> <a name="l00007"></a>00007 <span class="preprocessor"></span> <a name="l00008"></a>00008 <span class="preprocessor">#include "<a class="code" href="_i_mesh_writer_8h.html">IMeshWriter.h</a>"</span> <a name="l00009"></a>00009 <span class="preprocessor">#include "<a class="code" href="_i_scene_node_8h.html">ISceneNode.h</a>"</span> <a name="l00010"></a>00010 <span class="preprocessor">#include "<a class="code" href="_i_animated_mesh_8h.html">IAnimatedMesh.h</a>"</span> <a name="l00011"></a>00011 <span class="preprocessor">#include "<a class="code" href="_s_material_8h.html">SMaterial.h</a>"</span> <a name="l00012"></a>00012 <a name="l00013"></a>00013 <span class="keyword">namespace </span>irr <a name="l00014"></a>00014 { <a name="l00015"></a>00015 <span class="keyword">namespace </span>io <a name="l00016"></a>00016 { <a name="l00017"></a>00017 <span class="keyword">class </span>IWriteFile; <a name="l00018"></a>00018 } <span class="comment">// end namespace io</span> <a name="l00019"></a>00019 <a name="l00020"></a>00020 <span class="keyword">namespace </span>scene <a name="l00021"></a>00021 { <a name="l00023"></a><a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1">00023</a> <span class="keyword">enum</span> <a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1" title="Lighting models - more or less the way Collada categorizes materials.">E_COLLADA_TECHNIQUE_FX</a> <a name="l00024"></a>00024 { <a name="l00027"></a><a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1a69a2ffe63b7956eaedd3862f25d94d51">00027</a> <a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1a69a2ffe63b7956eaedd3862f25d94d51">ECTF_BLINN</a>, <a name="l00029"></a><a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1a48c8725416499c9909726e14f18c3fce">00029</a> <a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1a48c8725416499c9909726e14f18c3fce" title="Phong shading, default in many external renderers.">ECTF_PHONG</a>, <a name="l00031"></a><a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1aef79736ffe4a0d7653644c7082061726">00031</a> <a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1aef79736ffe4a0d7653644c7082061726" title="diffuse shaded surface that is independent of lighting.">ECTF_LAMBERT</a>, <a name="l00032"></a>00032 <span class="comment">// constantly shaded surface that is independent of lighting. </span> <a name="l00033"></a><a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1af21d6f4c2a62f9b3ae762c97808039aa">00033</a> <a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1af21d6f4c2a62f9b3ae762c97808039aa">ECTF_CONSTANT</a> <a name="l00034"></a>00034 }; <a name="l00035"></a>00035 <a name="l00037"></a><a class="code" href="namespaceirr_1_1scene.html#af7dadd5b96b683cfe1800f343c4f6619">00037</a> <span class="keyword">enum</span> <a class="code" href="namespaceirr_1_1scene.html#af7dadd5b96b683cfe1800f343c4f6619" title="How to interpret the opacity in collada.">E_COLLADA_TRANSPARENT_FX</a> <a name="l00038"></a>00038 { <a name="l00040"></a><a class="code" href="namespaceirr_1_1scene.html#af7dadd5b96b683cfe1800f343c4f6619a93b8dbd819a9860581193a60ed6155c6">00040</a> <a class="code" href="namespaceirr_1_1scene.html#af7dadd5b96b683cfe1800f343c4f6619a93b8dbd819a9860581193a60ed6155c6" title="default - only alpha channel of color or texture is used.">ECOF_A_ONE</a> = 0, <a name="l00041"></a>00041 <a name="l00043"></a><a class="code" href="namespaceirr_1_1scene.html#af7dadd5b96b683cfe1800f343c4f6619aeeb0b34217f227d32be4876aeeaaf70f">00043</a> <a class="code" href="namespaceirr_1_1scene.html#af7dadd5b96b683cfe1800f343c4f6619aeeb0b34217f227d32be4876aeeaaf70f" title="Alpha values for each RGB channel of color or texture are used.">ECOF_RGB_ZERO</a> = 1 <a name="l00044"></a>00044 }; <a name="l00045"></a>00045 <a name="l00047"></a><a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8">00047</a> <span class="keyword">enum</span> <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8" title="Color names collada uses in it's color samplers.">E_COLLADA_COLOR_SAMPLER</a> <a name="l00048"></a>00048 { <a name="l00049"></a><a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a316a6699bbd75d46aaa6c84b24bf3d1b">00049</a> <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a316a6699bbd75d46aaa6c84b24bf3d1b">ECCS_DIFFUSE</a>, <a name="l00050"></a><a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a307ed333fc9c8458252919d3e91cd049">00050</a> <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a307ed333fc9c8458252919d3e91cd049">ECCS_AMBIENT</a>, <a name="l00051"></a><a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a8244896d6a79bb4a8f9fdff35a53f69e">00051</a> <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a8244896d6a79bb4a8f9fdff35a53f69e">ECCS_EMISSIVE</a>, <a name="l00052"></a><a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a7783e491e21caa8574e7eb1b32e9eb31">00052</a> <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a7783e491e21caa8574e7eb1b32e9eb31">ECCS_SPECULAR</a>, <a name="l00053"></a><a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a9106443e64c9141cb0bb7d003603b5f8">00053</a> <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a9106443e64c9141cb0bb7d003603b5f8">ECCS_TRANSPARENT</a>, <a name="l00054"></a><a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a5d9100bd3a502fe5662089fc013e5bd7">00054</a> <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8a5d9100bd3a502fe5662089fc013e5bd7">ECCS_REFLECTIVE</a> <a name="l00055"></a>00055 }; <a name="l00056"></a>00056 <a name="l00058"></a><a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7e">00058</a> <span class="keyword">enum</span> <a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7e" title="Irrlicht colors which can be mapped to E_COLLADA_COLOR_SAMPLER values.">E_COLLADA_IRR_COLOR</a> <a name="l00059"></a>00059 { <a name="l00061"></a><a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7ea46a948a882be4d21af671d4dff939a12">00061</a> <a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7ea46a948a882be4d21af671d4dff939a12" title="Don't write this element at all.">ECIC_NONE</a>, <a name="l00062"></a>00062 <a name="l00064"></a><a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7eae1ff98b61069652418cc36e411de863c">00064</a> <a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7eae1ff98b61069652418cc36e411de863c" title="Check IColladaMeshWriterProperties for custom color.">ECIC_CUSTOM</a>, <a name="l00065"></a>00065 <a name="l00067"></a><a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7eac230a09c9fc579cc1776baea37731329">00067</a> <a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7eac230a09c9fc579cc1776baea37731329" title="Use SMaterial::DiffuseColor.">ECIC_DIFFUSE</a>, <a name="l00068"></a>00068 <a name="l00070"></a><a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7ea1508a71bf85cb6f1303df8ae240cde75">00070</a> <a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7ea1508a71bf85cb6f1303df8ae240cde75" title="Use SMaterial::AmbientColor.">ECIC_AMBIENT</a>, <a name="l00071"></a>00071 <a name="l00073"></a><a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7ea212908c2b2af576861553e4b441ac7f3">00073</a> <a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7ea212908c2b2af576861553e4b441ac7f3" title="Use SMaterial::EmissiveColor.">ECIC_EMISSIVE</a>, <a name="l00074"></a>00074 <a name="l00076"></a><a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7eae62f9539794fa526128ea1eed9840b7d">00076</a> <a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7eae62f9539794fa526128ea1eed9840b7d" title="Use SMaterial::SpecularColor.">ECIC_SPECULAR</a> <a name="l00077"></a>00077 }; <a name="l00078"></a>00078 <a name="l00080"></a><a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959">00080</a> <span class="keyword">enum</span> <a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959" title="Control when geometry elements are created.">E_COLLADA_GEOMETRY_WRITING</a> <a name="l00081"></a>00081 { <a name="l00083"></a><a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959a48f7ed09f68367a679cc8f6d4fd63906">00083</a> <a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959a48f7ed09f68367a679cc8f6d4fd63906" title="Default - write each mesh exactly once to collada. Optimal but will not work with many tools...">ECGI_PER_MESH</a>, <a name="l00084"></a>00084 <a name="l00088"></a><a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959af2b6f3248808f3dbf81a7e707e508f65">00088</a> <a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959af2b6f3248808f3dbf81a7e707e508f65">ECGI_PER_MESH_AND_MATERIAL</a> <a name="l00089"></a>00089 }; <a name="l00090"></a>00090 <a name="l00092"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html">00092</a> <span class="keyword">class </span><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html" title="Callback interface for properties which can be used to influence collada writing.">IColladaMeshWriterProperties</a> : <span class="keyword">public</span> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1_i_reference_counted.html" title="Base class of most objects of the Irrlicht Engine.">IReferenceCounted</a> <a name="l00093"></a>00093 { <a name="l00094"></a>00094 <span class="keyword">public</span>: <a name="l00095"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#a98a4463140ed5695a07b718ec829300e">00095</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#a98a4463140ed5695a07b718ec829300e">~IColladaMeshWriterProperties</a> () {} <a name="l00096"></a>00096 <a name="l00098"></a>00098 <span class="keyword">virtual</span> <a class="code" href="namespaceirr_1_1scene.html#a9ec31e84e05295892488296b0741e2b1" title="Lighting models - more or less the way Collada categorizes materials.">E_COLLADA_TECHNIQUE_FX</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#abc0fb19092b53bdf48be8cc97a2af63b" title="Which lighting model should be used in the technique (FX) section when exporting effects (materials)...">getTechniqueFx</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a>& material) <span class="keyword">const</span> = 0; <a name="l00099"></a>00099 <a name="l00101"></a>00101 <a name="l00104"></a>00104 <span class="keyword">virtual</span> <a class="code" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6" title="32 bit signed variable.">s32</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#a171287213537036be889a36ae4896c0e" title="Which texture index should be used when writing the texture of the given sampler color.">getTextureIdx</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a> & material, <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8" title="Color names collada uses in it's color samplers.">E_COLLADA_COLOR_SAMPLER</a> cs) <span class="keyword">const</span> = 0; <a name="l00105"></a>00105 <a name="l00107"></a>00107 <a name="l00111"></a>00111 <span class="keyword">virtual</span> <a class="code" href="namespaceirr_1_1scene.html#a61cba210038d6d843b81d9282f1cac7e" title="Irrlicht colors which can be mapped to E_COLLADA_COLOR_SAMPLER values.">E_COLLADA_IRR_COLOR</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#ab347c50cc9b291625d051a919d8772ab" title="Return which color from Irrlicht should be used for the color requested by collada.">getColorMapping</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a> & material, <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8" title="Color names collada uses in it's color samplers.">E_COLLADA_COLOR_SAMPLER</a> cs) <span class="keyword">const</span> = 0; <a name="l00112"></a>00112 <a name="l00114"></a>00114 <a name="l00115"></a>00115 <span class="keyword">virtual</span> <a class="code" href="classirr_1_1video_1_1_s_color.html" title="Class representing a 32 bit ARGB color.">video::SColor</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#a8028af2323dab63df4bdfeb292ec48cd" title="Return custom colors for certain color types requested by collada.">getCustomColor</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a> & material, <a class="code" href="namespaceirr_1_1scene.html#a6204218341c6b449d879cd8367b2f8d8" title="Color names collada uses in it's color samplers.">E_COLLADA_COLOR_SAMPLER</a> cs) <span class="keyword">const</span> = 0; <a name="l00116"></a>00116 <a name="l00118"></a>00118 <a name="l00119"></a>00119 <span class="keyword">virtual</span> <a class="code" href="namespaceirr_1_1scene.html#af7dadd5b96b683cfe1800f343c4f6619" title="How to interpret the opacity in collada.">E_COLLADA_TRANSPARENT_FX</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#a0d934ae86d3e587ae22f74d775bbfa36" title="Return the transparence color interpretation.">getTransparentFx</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a>& material) <span class="keyword">const</span> = 0; <a name="l00120"></a>00120 <a name="l00122"></a>00122 <a name="l00124"></a>00124 <span class="keyword">virtual</span> <a class="code" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07" title="32 bit floating point variable.">f32</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#ac547e1f89f4655751ecd570ad70d010b" title="Transparency value for that material.">getTransparency</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a>& material) <span class="keyword">const</span> = 0; <a name="l00125"></a>00125 <a name="l00127"></a>00127 <a name="l00129"></a>00129 <span class="keyword">virtual</span> <a class="code" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07" title="32 bit floating point variable.">f32</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#ad880b5fc91114049b20347a31199b2a9" title="Reflectivity value for that material.">getReflectivity</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a>& material) <span class="keyword">const</span> = 0; <a name="l00130"></a>00130 <a name="l00132"></a>00132 <a name="l00134"></a>00134 <span class="keyword">virtual</span> <a class="code" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07" title="32 bit floating point variable.">f32</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#ab7ec58f708ebebe941246e6c78b0691d" title="Return index of refraction for that material.">getIndexOfRefraction</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a>& material) <span class="keyword">const</span> = 0; <a name="l00135"></a>00135 <a name="l00138"></a>00138 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#af24d1c12b3f4168407c078bd7fc3dc82">isExportable</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">irr::scene::ISceneNode</a> * node) <span class="keyword">const</span> = 0; <a name="l00139"></a>00139 <a name="l00142"></a>00142 <span class="comment">// Note: Function is not const because there is no const getMesh() function.</span> <a name="l00143"></a>00143 <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_mesh.html" title="Class which holds the geometry of an object.">IMesh</a>* <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#ac6d9e1583642ac777471bd9225d72007">getMesh</a>(<a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">irr::scene::ISceneNode</a> * node) = 0; <a name="l00144"></a>00144 <a name="l00146"></a>00146 <a name="l00150"></a>00150 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html#a9c10df4dc3602efbba6a47b34e2f8f4b" title="Return if the node has it's own material overwriting the mesh-materials.">useNodeMaterial</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">scene::ISceneNode</a>* node) <span class="keyword">const</span> = 0; <a name="l00151"></a>00151 <a name="l00152"></a>00152 }; <a name="l00153"></a>00153 <a name="l00155"></a>00155 <a name="l00158"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html">00158</a> <span class="keyword">class </span><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html" title="Callback interface to use custom names on collada writing.">IColladaMeshWriterNames</a> : <span class="keyword">public</span> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1_i_reference_counted.html" title="Base class of most objects of the Irrlicht Engine.">IReferenceCounted</a> <a name="l00159"></a>00159 { <a name="l00160"></a>00160 <span class="keyword">public</span>: <a name="l00161"></a>00161 <a name="l00162"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html#a44e5377cc7845d5a0f29923ee5ed1809">00162</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html#a44e5377cc7845d5a0f29923ee5ed1809">~IColladaMeshWriterNames</a> () {} <a name="l00163"></a>00163 <a name="l00165"></a>00165 <a name="l00174"></a>00174 <span class="keyword">virtual</span> <a class="code" href="classirr_1_1core_1_1string.html">irr::core::stringw</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html#a2d36f1dee5904b3c622363282761ed0d" title="Return a unique name for the given mesh.">nameForMesh</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1scene_1_1_i_mesh.html" title="Class which holds the geometry of an object.">scene::IMesh</a>* mesh, <span class="keywordtype">int</span> instance) = 0; <a name="l00175"></a>00175 <a name="l00177"></a>00177 <a name="l00183"></a>00183 <span class="keyword">virtual</span> <a class="code" href="classirr_1_1core_1_1string.html">irr::core::stringw</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html#a60d3fdad90edc25b0305c91be15b255f" title="Return a unique name for the given node.">nameForNode</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">scene::ISceneNode</a>* node) = 0; <a name="l00184"></a>00184 <a name="l00186"></a>00186 <a name="l00196"></a>00196 <span class="keyword">virtual</span> <a class="code" href="classirr_1_1core_1_1string.html">irr::core::stringw</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html#acb5c8f38769d3fedcc76df73d9350c07" title="Return a name for the material.">nameForMaterial</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_material.html" title="Struct for holding parameters for a material renderer.">video::SMaterial</a> & material, <span class="keywordtype">int</span> materialId, <span class="keyword">const</span> <a class="code" href="classirr_1_1scene_1_1_i_mesh.html" title="Class which holds the geometry of an object.">scene::IMesh</a>* mesh, <span class="keyword">const</span> <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">scene::ISceneNode</a>* node) = 0; <a name="l00197"></a>00197 }; <a name="l00198"></a>00198 <a name="l00199"></a>00199 <a name="l00201"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html">00201</a> <span class="keyword">class </span><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html" title="Interface for writing meshes.">IColladaMeshWriter</a> : <span class="keyword">public</span> <a class="code" href="classirr_1_1scene_1_1_i_mesh_writer.html" title="Interface for writing meshes.">IMeshWriter</a> <a name="l00202"></a>00202 { <a name="l00203"></a>00203 <span class="keyword">public</span>: <a name="l00204"></a>00204 <a name="l00205"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a1d764ba230a304fa9f93d122f86f71a6">00205</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a1d764ba230a304fa9f93d122f86f71a6">IColladaMeshWriter</a>() <a name="l00206"></a>00206 : Properties(0), DefaultProperties(0), NameGenerator(0), DefaultNameGenerator(0) <a name="l00207"></a>00207 , WriteTextures(true), WriteDefaultScene(true), ExportSMaterialOnce(true) <a name="l00208"></a>00208 , AmbientLight(0.f, 0.f, 0.f, 1.f) <a name="l00209"></a>00209 , GeometryWriting(<a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959a48f7ed09f68367a679cc8f6d4fd63906" title="Default - write each mesh exactly once to collada. Optimal but will not work with many tools...">ECGI_PER_MESH</a>) <a name="l00210"></a>00210 { <a name="l00211"></a>00211 } <a name="l00212"></a>00212 <a name="l00214"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a85ed9eb856663c6698e1f7c4535b9057">00214</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a85ed9eb856663c6698e1f7c4535b9057" title="Destructor.">~IColladaMeshWriter</a>() <a name="l00215"></a>00215 { <a name="l00216"></a>00216 <span class="keywordflow">if</span> ( Properties ) <a name="l00217"></a>00217 Properties-><a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>(); <a name="l00218"></a>00218 <span class="keywordflow">if</span> ( DefaultProperties ) <a name="l00219"></a>00219 DefaultProperties-><a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>(); <a name="l00220"></a>00220 <span class="keywordflow">if</span> ( NameGenerator ) <a name="l00221"></a>00221 NameGenerator-><a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>(); <a name="l00222"></a>00222 <span class="keywordflow">if</span> ( DefaultNameGenerator ) <a name="l00223"></a>00223 DefaultNameGenerator-><a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>(); <a name="l00224"></a>00224 } <a name="l00225"></a>00225 <a name="l00227"></a>00227 <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#ad2e6e7617052c83d5f19d7811e0d5fd7" title="writes a scene starting with the given node">writeScene</a>(<a class="code" href="classirr_1_1io_1_1_i_write_file.html" title="Interface providing write access to a file.">io::IWriteFile</a>* file, <a class="code" href="classirr_1_1scene_1_1_i_scene_node.html" title="Scene node interface.">scene::ISceneNode</a>* root) = 0; <a name="l00228"></a>00228 <a name="l00229"></a>00229 <a name="l00231"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a2fa67e9fcfefdc6cf71d682e9891d15e">00231</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a2fa67e9fcfefdc6cf71d682e9891d15e" title="Set if texture information should be written.">setWriteTextures</a>(<span class="keywordtype">bool</span> write) <a name="l00232"></a>00232 { <a name="l00233"></a>00233 WriteTextures = write; <a name="l00234"></a>00234 } <a name="l00235"></a>00235 <a name="l00237"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#aeca9018df3848ce7d41a80dd4376dc19">00237</a> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#aeca9018df3848ce7d41a80dd4376dc19" title="Get if texture information should be written.">getWriteTextures</a>()<span class="keyword"> const </span> <a name="l00238"></a>00238 <span class="keyword"> </span>{ <a name="l00239"></a>00239 <span class="keywordflow">return</span> WriteTextures; <a name="l00240"></a>00240 } <a name="l00241"></a>00241 <a name="l00243"></a>00243 <a name="l00247"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#acf1952c459b4b2bde5b479b6d9717c35">00247</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#acf1952c459b4b2bde5b479b6d9717c35" title="Set if a default scene should be written when writing meshes.">setWriteDefaultScene</a>(<span class="keywordtype">bool</span> write) <a name="l00248"></a>00248 { <a name="l00249"></a>00249 WriteDefaultScene = write; <a name="l00250"></a>00250 } <a name="l00251"></a>00251 <a name="l00253"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a72ee7dfeb05f3021d914b1684d7bf860">00253</a> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a72ee7dfeb05f3021d914b1684d7bf860" title="Get if a default scene should be written.">getWriteDefaultScene</a>()<span class="keyword"> const</span> <a name="l00254"></a>00254 <span class="keyword"> </span>{ <a name="l00255"></a>00255 <span class="keywordflow">return</span> WriteDefaultScene; <a name="l00256"></a>00256 } <a name="l00257"></a>00257 <a name="l00259"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a410fb9e46db6250ff8bbf4ddb18ef1f2">00259</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a410fb9e46db6250ff8bbf4ddb18ef1f2" title="Sets ambient color of the scene to write.">setAmbientLight</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1video_1_1_s_colorf.html" title="Class representing a color with four floats.">video::SColorf</a> &ambientColor) <a name="l00260"></a>00260 { <a name="l00261"></a>00261 AmbientLight = ambientColor; <a name="l00262"></a>00262 } <a name="l00263"></a>00263 <a name="l00265"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a383e7dec830b77f8506b779291991755">00265</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1video_1_1_s_colorf.html" title="Class representing a color with four floats.">video::SColorf</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a383e7dec830b77f8506b779291991755" title="Return ambient light of the scene which is written.">getAmbientLight</a>()<span class="keyword"> const</span> <a name="l00266"></a>00266 <span class="keyword"> </span>{ <a name="l00267"></a>00267 <span class="keywordflow">return</span> AmbientLight; <a name="l00268"></a>00268 } <a name="l00269"></a>00269 <a name="l00271"></a>00271 <a name="l00278"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a25d2e1ff0bf04375c822800b0b3a4b01">00278</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a25d2e1ff0bf04375c822800b0b3a4b01" title="Control when and how often a mesh is written.">setGeometryWriting</a>(<a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959" title="Control when geometry elements are created.">E_COLLADA_GEOMETRY_WRITING</a> writeStyle) <a name="l00279"></a>00279 { <a name="l00280"></a>00280 GeometryWriting = writeStyle; <a name="l00281"></a>00281 } <a name="l00282"></a>00282 <a name="l00284"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a388a4d91ae01bce0221f56e3641aa971">00284</a> <span class="keyword">virtual</span> <a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959" title="Control when geometry elements are created.">E_COLLADA_GEOMETRY_WRITING</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a388a4d91ae01bce0221f56e3641aa971" title="Get the current style of geometry writing.">getGeometryWriting</a>()<span class="keyword"> const</span> <a name="l00285"></a>00285 <span class="keyword"> </span>{ <a name="l00286"></a>00286 <span class="keywordflow">return</span> GeometryWriting; <a name="l00287"></a>00287 } <a name="l00288"></a>00288 <a name="l00290"></a>00290 <a name="l00297"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#af6f37ca4a1ef6238cc079f3f5d5eb612">00297</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#af6f37ca4a1ef6238cc079f3f5d5eb612" title="Make certain there is only one collada material generated per Irrlicht material.">setExportSMaterialsOnlyOnce</a>(<span class="keywordtype">bool</span> exportOnce) <a name="l00298"></a>00298 { <a name="l00299"></a>00299 ExportSMaterialOnce = exportOnce; <a name="l00300"></a>00300 } <a name="l00301"></a>00301 <a name="l00302"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a7183584025a146696d4b45f7e6015334">00302</a> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a7183584025a146696d4b45f7e6015334">getExportSMaterialsOnlyOnce</a>()<span class="keyword"> const</span> <a name="l00303"></a>00303 <span class="keyword"> </span>{ <a name="l00304"></a>00304 <span class="keywordflow">return</span> ExportSMaterialOnce; <a name="l00305"></a>00305 } <a name="l00306"></a>00306 <a name="l00308"></a>00308 <a name="l00310"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#acffa89579171224f10e30f2c0d09f8c1">00310</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#acffa89579171224f10e30f2c0d09f8c1" title="Set properties to use by the meshwriter instead of it's default properties.">setProperties</a>(<a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html" title="Callback interface for properties which can be used to influence collada writing.">IColladaMeshWriterProperties</a> * p) <a name="l00311"></a>00311 { <a name="l00312"></a>00312 <span class="keywordflow">if</span> ( p == Properties ) <a name="l00313"></a>00313 <span class="keywordflow">return</span>; <a name="l00314"></a>00314 <span class="keywordflow">if</span> ( p ) <a name="l00315"></a>00315 p-><a class="code" href="classirr_1_1_i_reference_counted.html#a2b7a035532e5f409ca9482dab79185f4" title="Grabs the object. Increments the reference counter by one.">grab</a>(); <a name="l00316"></a>00316 <span class="keywordflow">if</span> ( Properties ) <a name="l00317"></a>00317 Properties-><a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>(); <a name="l00318"></a>00318 Properties = p; <a name="l00319"></a>00319 } <a name="l00320"></a>00320 <a name="l00322"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a5828b7a01654144c5aece5adaca7ce51">00322</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html" title="Callback interface for properties which can be used to influence collada writing.">IColladaMeshWriterProperties</a> * <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a5828b7a01654144c5aece5adaca7ce51" title="Get properties which are currently used.">getProperties</a>()<span class="keyword"> const</span> <a name="l00323"></a>00323 <span class="keyword"> </span>{ <a name="l00324"></a>00324 <span class="keywordflow">return</span> Properties; <a name="l00325"></a>00325 } <a name="l00326"></a>00326 <a name="l00328"></a>00328 <a name="l00329"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a95a51d0783f242d567369751aa7448cc">00329</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html" title="Callback interface for properties which can be used to influence collada writing.">IColladaMeshWriterProperties</a> * <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a95a51d0783f242d567369751aa7448cc" title="Return the original default properties of the writer.">getDefaultProperties</a>()<span class="keyword"> const </span> <a name="l00330"></a>00330 <span class="keyword"> </span>{ <a name="l00331"></a>00331 <span class="keywordflow">return</span> DefaultProperties; <a name="l00332"></a>00332 } <a name="l00333"></a>00333 <a name="l00335"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a7e48b43c91133e482e76da54849ef153">00335</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a7e48b43c91133e482e76da54849ef153" title="Install a generator to create custom names on export.">setNameGenerator</a>(<a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html" title="Callback interface to use custom names on collada writing.">IColladaMeshWriterNames</a> * nameGenerator) <a name="l00336"></a>00336 { <a name="l00337"></a>00337 <span class="keywordflow">if</span> ( nameGenerator == NameGenerator ) <a name="l00338"></a>00338 <span class="keywordflow">return</span>; <a name="l00339"></a>00339 <span class="keywordflow">if</span> ( nameGenerator ) <a name="l00340"></a>00340 nameGenerator-><a class="code" href="classirr_1_1_i_reference_counted.html#a2b7a035532e5f409ca9482dab79185f4" title="Grabs the object. Increments the reference counter by one.">grab</a>(); <a name="l00341"></a>00341 <span class="keywordflow">if</span> ( NameGenerator ) <a name="l00342"></a>00342 NameGenerator-><a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>(); <a name="l00343"></a>00343 NameGenerator = nameGenerator; <a name="l00344"></a>00344 } <a name="l00345"></a>00345 <a name="l00347"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#acd60a190c60228a87b6d218cbf9e2102">00347</a> <span class="keyword">virtual</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html" title="Callback interface to use custom names on collada writing.">IColladaMeshWriterNames</a> * <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#acd60a190c60228a87b6d218cbf9e2102" title="Get currently used name generator.">getNameGenerator</a>()<span class="keyword"> const</span> <a name="l00348"></a>00348 <span class="keyword"> </span>{ <a name="l00349"></a>00349 <span class="keywordflow">return</span> NameGenerator; <a name="l00350"></a>00350 } <a name="l00351"></a>00351 <a name="l00353"></a>00353 <a name="l00354"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a1d15f938a5b05a040724f7666694cd56">00354</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html" title="Callback interface to use custom names on collada writing.">IColladaMeshWriterNames</a> * <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#a1d15f938a5b05a040724f7666694cd56" title="Return the original default name generator of the writer.">getDefaultNameGenerator</a>()<span class="keyword"> const </span> <a name="l00355"></a>00355 <span class="keyword"> </span>{ <a name="l00356"></a>00356 <span class="keywordflow">return</span> DefaultNameGenerator; <a name="l00357"></a>00357 } <a name="l00358"></a>00358 <a name="l00360"></a>00360 <a name="l00361"></a>00361 <span class="keyword">virtual</span> <a class="code" href="classirr_1_1core_1_1string.html">irr::core::stringw</a> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#ac9c48beab095aa6f4cb4f696bb2ecd45" title="Restrict the characters of oldString a set of allowed characters in xs::NCName and add the prefix...">toNCName</a>(<span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1string.html">irr::core::stringw</a>& oldString, <span class="keyword">const</span> <a class="code" href="classirr_1_1core_1_1string.html">irr::core::stringw</a>& prefix=<a class="code" href="classirr_1_1core_1_1string.html">irr::core::stringw</a>(L<span class="stringliteral">"_NC_"</span>)) <span class="keyword">const</span> = 0; <a name="l00362"></a>00362 <a name="l00363"></a>00363 <a name="l00364"></a>00364 <span class="keyword">protected</span>: <a name="l00365"></a>00365 <span class="comment">// NOTE: You usually should also call setProperties with the same paraemter when using setDefaultProperties</span> <a name="l00366"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#aa8e2c739f035c2cd9cd858ab2b87ce6f">00366</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#aa8e2c739f035c2cd9cd858ab2b87ce6f">setDefaultProperties</a>(<a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html" title="Callback interface for properties which can be used to influence collada writing.">IColladaMeshWriterProperties</a> * p) <a name="l00367"></a>00367 { <a name="l00368"></a>00368 <span class="keywordflow">if</span> ( p == DefaultProperties ) <a name="l00369"></a>00369 <span class="keywordflow">return</span>; <a name="l00370"></a>00370 <span class="keywordflow">if</span> ( p ) <a name="l00371"></a>00371 p-><a class="code" href="classirr_1_1_i_reference_counted.html#a2b7a035532e5f409ca9482dab79185f4" title="Grabs the object. Increments the reference counter by one.">grab</a>(); <a name="l00372"></a>00372 <span class="keywordflow">if</span> ( DefaultProperties ) <a name="l00373"></a>00373 DefaultProperties-><a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>(); <a name="l00374"></a>00374 DefaultProperties = p; <a name="l00375"></a>00375 } <a name="l00376"></a>00376 <a name="l00377"></a>00377 <span class="comment">// NOTE: You usually should also call setNameGenerator with the same paraemter when using setDefaultProperties</span> <a name="l00378"></a><a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#af3e16f890cf591164503edb7e3c0eded">00378</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer.html#af3e16f890cf591164503edb7e3c0eded">setDefaultNameGenerator</a>(<a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html" title="Callback interface to use custom names on collada writing.">IColladaMeshWriterNames</a> * p) <a name="l00379"></a>00379 { <a name="l00380"></a>00380 <span class="keywordflow">if</span> ( p == DefaultNameGenerator ) <a name="l00381"></a>00381 <span class="keywordflow">return</span>; <a name="l00382"></a>00382 <span class="keywordflow">if</span> ( p ) <a name="l00383"></a>00383 p-><a class="code" href="classirr_1_1_i_reference_counted.html#a2b7a035532e5f409ca9482dab79185f4" title="Grabs the object. Increments the reference counter by one.">grab</a>(); <a name="l00384"></a>00384 <span class="keywordflow">if</span> ( DefaultNameGenerator ) <a name="l00385"></a>00385 DefaultNameGenerator-><a class="code" href="classirr_1_1_i_reference_counted.html#afb169a857e0d2cdb96b8821cb9bff17a" title="Drops the object. Decrements the reference counter by one.">drop</a>(); <a name="l00386"></a>00386 DefaultNameGenerator = p; <a name="l00387"></a>00387 } <a name="l00388"></a>00388 <a name="l00389"></a>00389 <span class="keyword">private</span>: <a name="l00390"></a>00390 <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html" title="Callback interface for properties which can be used to influence collada writing.">IColladaMeshWriterProperties</a> * Properties; <a name="l00391"></a>00391 <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_properties.html" title="Callback interface for properties which can be used to influence collada writing.">IColladaMeshWriterProperties</a> * DefaultProperties; <a name="l00392"></a>00392 <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html" title="Callback interface to use custom names on collada writing.">IColladaMeshWriterNames</a> * NameGenerator; <a name="l00393"></a>00393 <a class="code" href="classirr_1_1scene_1_1_i_collada_mesh_writer_names.html" title="Callback interface to use custom names on collada writing.">IColladaMeshWriterNames</a> * DefaultNameGenerator; <a name="l00394"></a>00394 <span class="keywordtype">bool</span> WriteTextures; <a name="l00395"></a>00395 <span class="keywordtype">bool</span> WriteDefaultScene; <a name="l00396"></a>00396 <span class="keywordtype">bool</span> ExportSMaterialOnce; <a name="l00397"></a>00397 <a class="code" href="classirr_1_1video_1_1_s_colorf.html" title="Class representing a color with four floats.">video::SColorf</a> AmbientLight; <a name="l00398"></a>00398 <a class="code" href="namespaceirr_1_1scene.html#a179008e7c02889459edf81394dbd6959" title="Control when geometry elements are created.">E_COLLADA_GEOMETRY_WRITING</a> GeometryWriting; <a name="l00399"></a>00399 }; <a name="l00400"></a>00400 <a name="l00401"></a>00401 <a name="l00402"></a>00402 } <span class="comment">// end namespace</span> <a name="l00403"></a>00403 } <span class="comment">// end namespace</span> <a name="l00404"></a>00404 <a name="l00405"></a>00405 <span class="preprocessor">#endif</span> </pre></div></div> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="_i_collada_mesh_writer_8h.html">IColladaMeshWriter.h</a> </li> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Defines</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <li class="footer"> <a href="http://irrlicht.sourceforge.net" target="_blank">Irrlicht Engine</a> Documentation © 2003-2012 by Nikolaus Gebhardt. Generated on Sun Nov 17 2013 20:18:39 for Irrlicht 3D Engine by <a href="http://www.doxygen.org/index.html" target="_blank">Doxygen</a> 1.7.5.1 </li> </ul> </div> </body> </html>