<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Irrlicht Engine: irr::scene::ISceneUserDataSerializer Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <table class="irrlicht" > <tr valign="middle"> <td><font size="2"><a class="qindex" href="index.html"><font color="#FFFFFF">Home</font></a> | <a class="qindex" href="namespaces.html"><font color="#FFFFFF">Namespaces</font></a> | <a class="qindex" href="hierarchy.html"><font color="#FFFFFF">Hierarchy</font></a> | <a class="qindex" href="classes.html"><font color="#FFFFFF">Alphabetical List</font></a> | <a class="qindex" href="annotated.html"><font color="#FFFFFF"> Class list</font></a> | <a class="qindex" href="files.html"><font color="#FFFFFF">Files</font></a> | <a class="qindex" href="namespacemembers.html"><font color="#FFFFFF"> Namespace Members</font></a> | <a class="qindex" href="functions.html"><font color="#FFFFFF">Class members</font></a> | <a class="qindex" href="globals.html"><font color="#FFFFFF">File members</font></a> | <a class="qindex" href="pages.html"><font color="#FFFFFF">Tutorials</font></a></font> </td> </tr> </table> <!-- Generated by Doxygen 1.5.6 --> <div class="navpath"><a class="el" href="namespaceirr.html">irr</a>::<a class="el" href="namespaceirr_1_1scene.html">scene</a>::<a class="el" href="classirr_1_1scene_1_1_i_scene_user_data_serializer.html">ISceneUserDataSerializer</a> </div> <div class="contents"> <h1>irr::scene::ISceneUserDataSerializer Class Reference</h1><!-- doxytag: class="irr::scene::ISceneUserDataSerializer" -->Interface to read and write user data to and from .<a class="el" href="namespaceirr.html" title="Everything in the Irrlicht Engine can be found in this namespace.">irr</a> files. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="_i_scene_user_data_serializer_8h-source.html">ISceneUserDataSerializer.h</a>></code> <p> <p> <a href="classirr_1_1scene_1_1_i_scene_user_data_serializer-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classirr_1_1io_1_1_i_attributes.html">io::IAttributes</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_scene_user_data_serializer.html#8d276882257602ffc03a23a38290ea44">createUserData</a> (<a class="el" href="classirr_1_1scene_1_1_i_scene_node.html">ISceneNode</a> *forSceneNode)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Called when the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> manager is writing a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node to an xml file for example. <a href="#8d276882257602ffc03a23a38290ea44"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_scene_user_data_serializer.html#f025f0c9ee60be56d91f34bc9ab15115">OnCreateNode</a> (<a class="el" href="classirr_1_1scene_1_1_i_scene_node.html">ISceneNode</a> *node)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Called when the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> manager create a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node while loading a file. <a href="#f025f0c9ee60be56d91f34bc9ab15115"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_scene_user_data_serializer.html#48276bde0e05343d39ec25c6933f122d">OnReadUserData</a> (<a class="el" href="classirr_1_1scene_1_1_i_scene_node.html">ISceneNode</a> *forSceneNode, <a class="el" href="classirr_1_1io_1_1_i_attributes.html">io::IAttributes</a> *userData)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Called when the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> manager read a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node while loading a file. <a href="#48276bde0e05343d39ec25c6933f122d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_scene_user_data_serializer.html#02175cc96f2121b3ea231938be21e4bc">~ISceneUserDataSerializer</a> ()</td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Interface to read and write user data to and from .<a class="el" href="namespaceirr.html" title="Everything in the Irrlicht Engine can be found in this namespace.">irr</a> files. <p> This interface is to be implemented by the user, to make it possible to read and write user data when reading or writing .<a class="el" href="namespaceirr.html" title="Everything in the Irrlicht Engine can be found in this namespace.">irr</a> files via <a class="el" href="classirr_1_1scene_1_1_i_scene_manager.html" title="The Scene Manager manages scene nodes, mesh recources, cameras and all the other...">ISceneManager</a>. To be used with <a class="el" href="classirr_1_1scene_1_1_i_scene_manager.html#a29315bb2369c857b155dc2074d516a2" title="Loads a scene. Note that the current scene is not cleared before.">ISceneManager::loadScene()</a> and <a class="el" href="classirr_1_1scene_1_1_i_scene_manager.html#b847d501961c633db60497e878b93305" title="Saves the current scene into a file.">ISceneManager::saveScene()</a> <p>Definition at line <a class="el" href="_i_scene_user_data_serializer_8h-source.html#l00024">24</a> of file <a class="el" href="_i_scene_user_data_serializer_8h-source.html">ISceneUserDataSerializer.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="02175cc96f2121b3ea231938be21e4bc"></a><!-- doxytag: member="irr::scene::ISceneUserDataSerializer::~ISceneUserDataSerializer" ref="02175cc96f2121b3ea231938be21e4bc" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual irr::scene::ISceneUserDataSerializer::~ISceneUserDataSerializer </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td><code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> <p>Definition at line <a class="el" href="_i_scene_user_data_serializer_8h-source.html#l00028">28</a> of file <a class="el" href="_i_scene_user_data_serializer_8h-source.html">ISceneUserDataSerializer.h</a>.</p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="8d276882257602ffc03a23a38290ea44"></a><!-- doxytag: member="irr::scene::ISceneUserDataSerializer::createUserData" ref="8d276882257602ffc03a23a38290ea44" args="(ISceneNode *forSceneNode)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classirr_1_1io_1_1_i_attributes.html">io::IAttributes</a>* irr::scene::ISceneUserDataSerializer::createUserData </td> <td>(</td> <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_scene_node.html">ISceneNode</a> * </td> <td class="paramname"> <em>forSceneNode</em> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Called when the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> manager is writing a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node to an xml file for example. <p> Implement this method and return a list of attributes containing the user data you want to be saved together with the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node. Return 0 if no user data should be added. Please note that the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> manager will call drop() to the returned pointer after it no longer needs it, so if you didn't create a new object for the return value and returning a longer existing IAttributes object, simply call grab() before returning it. </div> </div><p> <a class="anchor" name="f025f0c9ee60be56d91f34bc9ab15115"></a><!-- doxytag: member="irr::scene::ISceneUserDataSerializer::OnCreateNode" ref="f025f0c9ee60be56d91f34bc9ab15115" args="(ISceneNode *node)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void irr::scene::ISceneUserDataSerializer::OnCreateNode </td> <td>(</td> <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_scene_node.html">ISceneNode</a> * </td> <td class="paramname"> <em>node</em> </td> <td> ) </td> <td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Called when the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> manager create a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node while loading a file. <p> </div> </div><p> <a class="anchor" name="48276bde0e05343d39ec25c6933f122d"></a><!-- doxytag: member="irr::scene::ISceneUserDataSerializer::OnReadUserData" ref="48276bde0e05343d39ec25c6933f122d" args="(ISceneNode *forSceneNode, io::IAttributes *userData)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void irr::scene::ISceneUserDataSerializer::OnReadUserData </td> <td>(</td> <td class="paramtype"><a class="el" href="classirr_1_1scene_1_1_i_scene_node.html">ISceneNode</a> * </td> <td class="paramname"> <em>forSceneNode</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classirr_1_1io_1_1_i_attributes.html">io::IAttributes</a> * </td> <td class="paramname"> <em>userData</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Called when the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> manager read a <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node while loading a file. <p> The userData pointer contains a list of attributes with userData which were attached to the <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> node in the read <a class="el" href="namespaceirr_1_1scene.html" title="All scene management can be found in this namespace: Mesh loading, special scene...">scene</a> file. </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="_i_scene_user_data_serializer_8h-source.html">ISceneUserDataSerializer.h</a></ul> </div> <hr size="1"> <address style="align: right;"> <small> </small> </address> <table width="100%" border="0" cellspacing="0" cellpadding="2"> <tr> <td width="0"> <div align="left"><small><a href="http://irrlicht.sourceforge.net" target="_blank"><img src="irrlicht.png" alt="The Irrlicht Engine" align="middle" border=0 width=88 height=31></a></small></div></td> <td> <div align="left"><small><em><font size="2">The <a href="http://irrlicht.sourceforge.net" target="_blank">Irrlicht Engine</a> Documentation © 2003-2009 by Nikolaus Gebhardt. Generated on Sun Jan 10 09:24:16 2010 by <a href="http://www.doxygen.org" target="_blank">Doxygen</a> (1.5.6)</font></em></small></div></td> </tr> </table> <address style="align: right;"> </address> </body> </html>