aboutsummaryrefslogtreecommitdiff
path: root/docs/doxygen/nel/a02270.html
diff options
context:
space:
mode:
Diffstat (limited to 'docs/doxygen/nel/a02270.html')
-rw-r--r--docs/doxygen/nel/a02270.html5786
1 files changed, 5786 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02270.html b/docs/doxygen/nel/a02270.html
new file mode 100644
index 00000000..21108171
--- /dev/null
+++ b/docs/doxygen/nel/a02270.html
@@ -0,0 +1,5786 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
+<title>NeL: NLMISC::IStream class Reference</title>
+<link href="doxygen.css" rel="stylesheet" type="text/css">
+</head><body>
+<!-- Generated by Doxygen 1.3.6 -->
+<div class="qindex"> <form class="search" action="search.php" method="get">
+<a class="qindex" href="main.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Data&nbsp;Structures</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Data&nbsp;Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a> | <span class="search"><u>S</u>earch&nbsp;for&nbsp;<input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div>
+<h1>NLMISC::IStream Class Reference</h1><code>#include &lt;<a class="el" href="a06462.html">stream.h</a>&gt;</code>
+<p>
+<p>Inheritance diagram for NLMISC::IStream:
+<p><center><img src="a02270.png" usemap="#NLMISC::IStream_map" border="0" alt=""></center>
+<map name="NLMISC::IStream_map">
+<area href="a02973.html" alt="NLAIAGENT::CMsgIStream" shape="rect" coords="0,56,170,80">
+<area href="a02975.html" alt="NLAIAGENT::CMsgOStream" shape="rect" coords="180,56,350,80">
+<area href="a02653.html" alt="NLMISC::CIFile" shape="rect" coords="360,56,530,80">
+<area href="a02271.html" alt="NLMISC::CMemStream" shape="rect" coords="540,56,710,80">
+<area href="a03011.html" alt="NLMISC::COFile" shape="rect" coords="720,56,890,80">
+<area href="a03032.html" alt="NLMISC::COXml" shape="rect" coords="900,56,1070,80">
+<area href="a02269.html" alt="NLMISC::CBitMemStream" shape="rect" coords="360,112,530,136">
+<area href="a03452.html" alt="NLMISC::CStringStream" shape="rect" coords="540,112,710,136">
+<area href="a02918.html" alt="NLNET::CMessage" shape="rect" coords="720,112,890,136">
+</map>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+A IO stream interface. This is the base interface for stream objects. Differents kind of streams may be implemented, by specifying <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a> methods.<p>
+<b>Deriver</b> <b>Use</b>:<p>
+The deriver must:<ul>
+<li>construct object specifying his type, see <a class="el" href="a02270.html#NLMISC_1_1IStreama2">IStream()</a>. A stream may be setup Input or Output at construction, but cannot change during his life.</li><li>specify <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, to save or load pack of bytes.</li><li>specify <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_0">serialBit()</a>, to save or load a bit.</li><li>call <a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_0">resetPtrTable()</a> when the stream reset itself (e.g.: <a class="el" href="a02653.html#NLMISC_1_1CIFilea3">CIFile::close()</a> )</li></ul>
+<p>
+Sample of streams: COutMemoryStream, CInFileStream ...<p>
+<b>Client</b> <b>Use</b>:<p>
+An object which can be serialized, must provide a "void serial(IStream &amp;)" method. In this method, he can use any of the <a class="el" href="a02270.html">IStream</a> method to help himself like:<ul>
+<li><a class="el" href="a02270.html#NLMISC_1_1IStreama5">serial()</a> with a base type (uint32, string, char...), or even with an object which provide "void serial(IStream &amp;)"</li><li>template serial(T0&amp;, T1&amp;, ...) to serialize multiple object/variables in one call (up to 6).</li><li><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> to serialize containers.</li><li><a class="el" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion()</a> to check/store a version number of his class.</li><li><a class="el" href="a02270.html#NLMISC_1_1IStreamz2035_7">serialPtr()</a> to use the ptr support of <a class="el" href="a02270.html">IStream</a> (see <a class="el" href="a02270.html#NLMISC_1_1IStreamz2035_7">serialPtr()</a> for more information)</li><li><a class="el" href="a02270.html#NLMISC_1_1IStreama0">isReading()</a> to know if he write in the stream, or if he read.</li></ul>
+<p>
+The using is very simple as shown in this example:<p>
+<pre class="fragment"><div> <span class="keyword">class </span>A
+ {
+ <span class="keyword">public</span>:
+ <span class="keywordtype">float</span> <a class="code" href="a04223.html#a572">x</a>;
+ <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a04223.html#a573">y</a>;
+ Class1 a; <span class="comment">// this class must provide a serial() method too...</span>
+ Base *c,*d; <span class="comment">// Base must derive from IStreamable</span>
+ vector&lt;Class2&gt; tab;
+
+ <span class="keyword">public</span>:
+ <span class="keywordtype">void</span> <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(IStream &amp;f)
+ {
+ <a class="code" href="a04558.html#a14">sint</a> streamver= f.serialVersion(3);
+ f.serial(<a class="code" href="a04223.html#a572">x</a>,<a class="code" href="a04223.html#a573">y</a>,a);
+ f.serialPtr(c);
+ f.serialCont(tab);
+ <span class="keywordflow">if</span>(streamver&gt;=2)
+ f.serialPtr(d);
+ }
+ };
+</div></pre><p>
+NB: <b>YOU</b> <b>CANNOT</b> use serial with a int / uint / sint type, since those type have unspecified length. <dl compact><dt><b>Author:</b></dt><dd>Lionel Berenguier <p>
+Vianney Lecroart <p>
+Nevrax France </dd></dl>
+<dl compact><dt><b>Date:</b></dt><dd>2000 </dd></dl>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00180">180</a> of file <a class="el" href="a06462.html">stream.h</a>.<table border=0 cellpadding=0 cellspacing=0>
+<tr><td></td></tr>
+<tr><td colspan=2><br><h2>Seek fonctionnality</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>enum &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0">TSeekOrigin</a> { <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw0">begin</a>,
+<a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw1">current</a>,
+<a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw2">end</a>
+ }</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_1">getPos</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual std::string&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_2">getStreamName</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_3">seek</a> (<a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a04223.html#a586">offset</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0">TSeekOrigin</a> origin)</td></tr>
+
+<tr><td colspan=2><br><h2>standard STL containers serialisation.</h2></td></tr>
+<tr><td colspan=2>Known Supported containers: vector&lt;&gt;, list&lt;&gt;, deque&lt;&gt;, set&lt;&gt;, multiset&lt;&gt;, map&lt;&gt;, multimap&lt;&gt; Support up to sint32 length containers. <dl compact><dt><b>See also:</b></dt><dd>serialContPtr() serialContPolyPtr() </dd></dl>
+<br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_0">serialCont</a> (std::vector&lt; bool &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;. <a href="#NLMISC_1_1IStreamz2033_0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_1">serialCont</a> (std::vector&lt; <a class="el" href="a04558.html#a6">sint8</a> &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;sint8&gt;. <a href="#NLMISC_1_1IStreamz2033_1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_2">serialCont</a> (std::vector&lt; <a class="el" href="a04558.html#a7">uint8</a> &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;uint8&gt;. <a href="#NLMISC_1_1IStreamz2033_2"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class K, class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_3">serialCont</a> (std::multimap&lt; K, T &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;. <a href="#NLMISC_1_1IStreamz2033_3"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class K, class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_4">serialCont</a> (std::map&lt; K, T &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;. <a href="#NLMISC_1_1IStreamz2033_4"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_5">serialCont</a> (std::multiset&lt; T &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;. <a href="#NLMISC_1_1IStreamz2033_5"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_6">serialCont</a> (std::set&lt; T &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;. <a href="#NLMISC_1_1IStreamz2033_6"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_7">serialCont</a> (std::deque&lt; T &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;. <a href="#NLMISC_1_1IStreamz2033_7"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_8">serialCont</a> (std::list&lt; T &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;. <a href="#NLMISC_1_1IStreamz2033_8"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T, class Allocator&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a> (std::vector&lt; T, Allocator &gt; &amp;cont)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;. <a href="#NLMISC_1_1IStreamz2033_9"></a><br><br></td></tr>
+<tr><td colspan=2><br><h2>XML implementation interface</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_0">resetPtrTable</a> ()</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_1">setInOut</a> (bool inputStream)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_2">setXMLMode</a> (bool on)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_3">xmlBreakLineInternal</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">xmlBreakLine implementation <a href="#NLMISC_1_1IStreamz2040_3"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_4">xmlCommentInternal</a> (const char *comment)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">xmlComment implementation <a href="#NLMISC_1_1IStreamz2040_4"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_5">xmlPopInternal</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">xmlPop implementation <a href="#NLMISC_1_1IStreamz2040_5"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_6">xmlPushBeginInternal</a> (const char *name)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">xmlPushBegin implementation <a href="#NLMISC_1_1IStreamz2040_6"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_7">xmlPushEndInternal</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">xmlPushEnd implementation <a href="#NLMISC_1_1IStreamz2040_7"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_8">xmlSetAttribInternal</a> (const char *name)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">xmlBreakLine implementation <a href="#NLMISC_1_1IStreamz2040_8"></a><br><br></td></tr>
+<tr><td colspan=2><br><h2>Public Types</h2></td></tr>
+<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama0">isReading</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Is this stream a Read/Input stream? <a href="#NLMISC_1_1IStreama0"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama1">IStream</a> (const <a class="el" href="a02270.html">IStream</a> &amp;other)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor. <a href="#NLMISC_1_1IStreama1"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama2">IStream</a> (bool inputStream)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama3">isXML</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02270.html">IStream</a> &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama4">operator=</a> (const <a class="el" href="a02270.html">IStream</a> &amp;other)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator. <a href="#NLMISC_1_1IStreama4"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (T &amp;obj)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama6">serialBufferWithSize</a> (<a class="el" href="a04558.html#a7">uint8</a> *buf, <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a04223.html#a571">len</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama7">serialEnum</a> (T &amp;em)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Template enum serialisation. Serialized as a sint32. <a href="#NLMISC_1_1IStreama7"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama8">serialMemStream</a> (<a class="el" href="a02271.html">CMemStream</a> &amp;b)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Serial memstream, bitmemstream... <a href="#NLMISC_1_1IStreama8"></a><br><br></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreama9">~IStream</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destructor. <a href="#NLMISC_1_1IStreama9"></a><br><br></td></tr>
+<tr><td colspan="2"><div class="groupHeader">XML implementation interface</div></td></tr>
+<tr><td colspan="2"><div class="groupText">xmlPushBegin() open recurcively a new node and open its header. You must call xmlPushEnd() to close the header and xmlPop() to close this node.<p>
+<dl compact><dt><b>Returns:</b></dt><dd>true if you can open the node header, false if the stream is between a xmlPushBegin() and a xmlPushEnd() call. </dd></dl>
+<br><br></div></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_0">serialBit</a> (bool &amp;bit)=0</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a> (<a class="el" href="a04558.html#a7">uint8</a> *buf, <a class="el" href="a04558.html#a15">uint</a> <a class="el" href="a04223.html#a571">len</a>)=0</td></tr>
+
+<tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreame0">getVersionException</a> (bool &amp;throwOnOlder, bool &amp;throwOnNewer)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreame1">setVersionException</a> (bool throwOnOlder, bool throwOnNewer)</td></tr>
+
+<tr><td colspan=2><br><h2>Protected Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamb0">serialVector</a> (T &amp;cont)</td></tr>
+
+<tr><td colspan=2><br><h2>Private Types</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::hash_map&lt; <a class="el" href="a04558.html#a13">uint64</a>,<br>
+ void *, <a class="el" href="a02606.html">CHashFunctionUInt64</a> <br>
+&gt;::iterator&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamy0">ItIdMap</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::hash_map&lt; <a class="el" href="a04558.html#a13">uint64</a>,<br>
+ void *, <a class="el" href="a02606.html">CHashFunctionUInt64</a> <br>
+&gt;::value_type&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamy1">ValueIdMap</a></td></tr>
+
+<tr><td colspan=2><br><h2>Private Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd0">serialIStreamable</a> (<a class="el" href="a02867.html">IStreamable</a> *&amp;ptr)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd1">serialMap</a> (T &amp;cont)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd2">serialMultimap</a> (T &amp;cont)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd3">serialSTLCont</a> (T &amp;cont)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd4">serialSTLContLen</a> (T &amp;cont, <a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a04223.html#a571">len</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd5">serialSTLContLenPolyPtr</a> (T &amp;cont, <a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a04223.html#a571">len</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd6">serialSTLContLenPtr</a> (T &amp;cont, <a class="el" href="a04558.html#a10">sint32</a> <a class="el" href="a04223.html#a571">len</a>)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd7">serialSTLContPolyPtr</a> (T &amp;cont)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd8">serialSTLContPtr</a> (T &amp;cont)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd9">serialVectorPolyPtr</a> (T &amp;cont)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>template&lt;class T&gt; void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamd10">serialVectorPtr</a> (T &amp;cont)</td></tr>
+
+<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>std::hash_map&lt; <a class="el" href="a04558.html#a13">uint64</a>, void *,<br>
+ <a class="el" href="a02606.html">CHashFunctionUInt64</a> &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamr1">_InputStream</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamr2">_NextSerialPtrId</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a></td></tr>
+
+<tr><td colspan=2><br><h2>Static Private Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamv0">_ThrowOnNewer</a> = true</td></tr>
+
+<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="a02270.html#NLMISC_1_1IStreamv1">_ThrowOnOlder</a> = false</td></tr>
+
+</table>
+<hr><h2>Member Typedef Documentation</h2>
+<a class="anchor" name="NLMISC_1_1IStreamy0" doxytag="NLMISC::IStream::ItIdMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef std::hash_map&lt;<a class="el" href="a04558.html#a13">uint64</a>, void*, <a class="el" href="a02606.html">CHashFunctionUInt64</a>&gt;::iterator <a class="el" href="a02270.html#NLMISC_1_1IStreamy0">NLMISC::IStream::ItIdMap</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00891">891</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, and <a class="el" href="a06462.html#l00390">serialPtr()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamy1" doxytag="NLMISC::IStream::ValueIdMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> typedef std::hash_map&lt;<a class="el" href="a04558.html#a13">uint64</a>, void*, <a class="el" href="a02606.html">CHashFunctionUInt64</a>&gt;::value_type <a class="el" href="a02270.html#NLMISC_1_1IStreamy1">NLMISC::IStream::ValueIdMap</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00892">892</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, and <a class="el" href="a06462.html#l00390">serialPtr()</a>. </td>
+ </tr>
+</table>
+<hr><h2>Member Enumeration Documentation</h2>
+<a class="anchor" name="NLMISC_1_1IStreamz2036_0" doxytag="NLMISC::IStream::TSeekOrigin" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> enum <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0">NLMISC::IStream::TSeekOrigin</a>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Parameters for <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_3">seek()</a>. begin seek from the begining of the stream. current seek from the current location of the stream pointer. end seek from the end of the stream.<dl compact><dt><b>Enumeration values: </b></dt><dd>
+<table border=0 cellspacing=2 cellpadding=0>
+<tr><td valign=top><em><a class="anchor" name="NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw0" doxytag="begin" ></a>begin</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a class="anchor" name="NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw1" doxytag="current" ></a>current</em>&nbsp;</td><td>
+</td></tr>
+<tr><td valign=top><em><a class="anchor" name="NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw2" doxytag="end" ></a>end</em>&nbsp;</td><td>
+</td></tr>
+</table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00549">549</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+<div class="fragment"><pre>00549 { <a class="code" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw0">begin</a>, <a class="code" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw1">current</a>, <a class="code" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw2">end</a> };
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="NLMISC_1_1IStreama2" doxytag="NLMISC::IStream::IStream" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NLMISC::IStream::IStream </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>inputStream</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, explicit]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Constructor. Notice that those behavior can be set at construction only. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>inputStream</em>&nbsp;</td><td>is the stream an Input (read) stream?</td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06463.html#l00055">55</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00884">_InputStream</a>, <a class="el" href="a06462.html#l01443">_XML</a>, and <a class="el" href="a06461.html#l00253">resetPtrTable()</a>.
+<p>
+<div class="fragment"><pre>00056 {
+00057 <a class="code" href="a02270.html#NLMISC_1_1IStreamr1">_InputStream</a>= inputStream;
+00058 <a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a> = <span class="keyword">false</span>;
+00059 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_0">resetPtrTable</a>();
+00060 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreama9" doxytag="NLMISC::IStream::~IStream" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual NLMISC::IStream::~<a class="el" href="a02270.html">IStream</a> </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Destructor.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00209">209</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+<div class="fragment"><pre>00209 {}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreama1" doxytag="NLMISC::IStream::IStream" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> NLMISC::IStream::IStream </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a02270.html">IStream</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>other</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Copy constructor.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06461.html#l00089">89</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>, and <a class="el" href="a06461.html#l00101">operator=()</a>.
+<p>
+<div class="fragment"><pre>00090 {
+00091 <a class="code" href="a02270.html#NLMISC_1_1IStreama4">operator=</a>( other );
+00092
+00093 <span class="comment">// By default, mode _XML is off</span>
+00094 <a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a> = <span class="keyword">false</span>;
+00095 }
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="NLMISC_1_1IStreamz2036_1" doxytag="NLMISC::IStream::getPos" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a10">sint32</a> NLMISC::IStream::getPos </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the location of the stream pointer.<p>
+NB: If the stream doesn't support the seek fonctionnality, it throw <a class="el" href="a03808.html">ESeekNotSupported</a>. Default implementation: { throw <a class="el" href="a03808.html">ESeekNotSupported</a>; } <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>offset</em>&nbsp;</td><td>is the wanted offset from the origin. </td></tr>
+ <tr><td valign=top><em>origin</em>&nbsp;</td><td>is the origin of the seek </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>Returns:</b></dt><dd>the new offset regarding from the origin. </dd></dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a03808.html">ESeekNotSupported</a> SeekOrigin <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_3">seek</a></dd></dl>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama2">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02653.html#NLMISC_1_1CIFilea8">NLMISC::CIFile</a>, <a class="el" href="a03011.html#NLMISC_1_1COFilea4">NLMISC::COFile</a>, and <a class="el" href="a02271.html#NLMISC_1_1CStringStreama10">NLMISC::CMemStream</a>.
+<p>
+Definition at line <a class="el" href="a06461.html#l00407">407</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+Referenced by <a class="el" href="a05486.html#l01800">NLMISC::CBitmap::readTGA()</a>.
+<p>
+<div class="fragment"><pre>00408 {
+00409 <span class="keywordflow">throw</span> ESeekNotSupported(*<span class="keyword">this</span>);
+00410 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2036_2" doxytag="NLMISC::IStream::getStreamName" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> string NLMISC::IStream::getStreamName </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get a name for this stream. maybe a fileName if FileStream. Default is to return "".
+<p>
+Reimplemented in <a class="el" href="a02653.html#NLMISC_1_1CIFilea9">NLMISC::CIFile</a>, and <a class="el" href="a03011.html#NLMISC_1_1COFilea5">NLMISC::COFile</a>.
+<p>
+Definition at line <a class="el" href="a06461.html#l00420">420</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+Referenced by <a class="el" href="a06461.html#l00046">NLMISC::EStream::EStream()</a>.
+<p>
+<div class="fragment"><pre>00421 {
+00422 <span class="keywordflow">return</span> <span class="stringliteral">""</span>;
+00423 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreame0" doxytag="NLMISC::IStream::getVersionException" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::getVersionException </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>throwOnOlder</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>bool &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>throwOnNewer</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Get the behavior of <a class="el" href="a02270.html">IStream</a> regarding input stream that are older/newer than the class. <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion()</a> <a class="el" href="a02270.html#NLMISC_1_1IStreame1">setVersionException()</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06461.html#l00078">78</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06461.html#l00067">_ThrowOnNewer</a>, and <a class="el" href="a06461.html#l00066">_ThrowOnOlder</a>.
+<p>
+<div class="fragment"><pre>00079 {
+00080 throwOnOlder=<a class="code" href="a02270.html#NLMISC_1_1IStreamv1">_ThrowOnOlder</a>;
+00081 throwOnNewer=<a class="code" href="a02270.html#NLMISC_1_1IStreamv0">_ThrowOnNewer</a>;
+00082 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreama0" doxytag="NLMISC::IStream::isReading" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::isReading </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Is this stream a Read/Input stream?
+<p>
+
+<p>
+Definition at line <a class="el" href="a06463.html#l00064">64</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00884">_InputStream</a>.
+<p>
+Referenced by <a class="el" href="a06026.html#l00151">NLNET::CMessage::assignFromSubMessage()</a>, <a class="el" href="a05979.html#l00306">NLMISC::CMemStream::bufferToFill()</a>, <a class="el" href="a06152.html#l00136">NL3D::CParticleSystemShape::buildFromPS()</a>, <a class="el" href="a06026.html#l00398">NLNET::CMessage::clear()</a>, <a class="el" href="a05979.html#l00201">NLMISC::CMemStream::clear()</a>, <a class="el" href="a06026.html#l00091">NLNET::CMessage::CMessage()</a>, <a class="el" href="a05482.html#l00673">NLMISC::CBitMemStream::displayStream()</a>, <a class="el" href="a05979.html#l00371">NLMISC::CMemStream::fastSerial()</a>, <a class="el" href="a05979.html#l00277">NLMISC::CMemStream::fill()</a>, <a class="el" href="a06152.html#l00344">NL3D::CParticleSystemShape::flushTextures()</a>, <a class="el" href="a05482.html#l00737">NLMISC::CBitMemStream::getSerialItem()</a>, <a class="el" href="a05483.html#l00730">NLMISC::CBitMemStream::increaseBufferIfNecessary()</a>, <a class="el" href="a06107.html#l00111">NLMISC::COXml::init()</a>, <a class="el" href="a06152.html#l00182">NL3D::CParticleSystemShape::instanciatePS()</a>, <a class="el" href="a05482.html#l00172">NLMISC::CBitMemStream::internalSerial()</a>, <a class="el" href="a06027.html#l00198">NLNET::CMessage::invert()</a>, <a class="el" href="a05979.html#l00331">NLMISC::CMemStream::invert()</a>, <a class="el" href="a05483.html#l00418">NLMISC::CBitMemStream::invert()</a>, <a class="el" href="a06027.html#l00104">NLNET::CMessage::length()</a>, <a class="el" href="a05979.html#l00217">NLMISC::CMemStream::length()</a>, <a class="el" href="a05483.html#l00402">NLMISC::CBitMemStream::length()</a>, <a class="el" href="a05486.html#l00109">NLMISC::CBitmap::load()</a>, <a class="el" href="a05486.html#l02582">NLMISC::CBitmap::loadSize()</a>, <a class="el" href="a06027.html#l00143">NLNET::CMessage::lockSubMessage()</a>, <a class="el" href="a06026.html#l00118">NLNET::CMessage::operator=()</a>, <a class="el" href="a05483.html#l00710">NLMISC::CBitMemStream::pointNextByte()</a>, <a class="el" href="a05979.html#l00190">NLMISC::CMemStream::poke()</a>, <a class="el" href="a05482.html#l00346">NLMISC::CBitMemStream::poke()</a>, <a class="el" href="a05482.html#l00375">NLMISC::CBitMemStream::pokeBits()</a>, <a class="el" href="a05482.html#l00415">NLMISC::CBitMemStream::readBits()</a>, <a class="el" href="a05486.html#l01800">NLMISC::CBitmap::readTGA()</a>, <a class="el" href="a06026.html#l00362">NLNET::CMessage::readTypeAtCurrentPos()</a>, <a class="el" href="a05979.html#l00168">NLMISC::CMemStream::reserve()</a>, <a class="el" href="a05482.html#l00275">NLMISC::CBitMemStream::reserveBits()</a>, <a class="el" href="a05483.html#l00382">NLMISC::CBitMemStream::resetBufPos()</a>, <a class="el" href="a05761.html#l02623">NLPACS::CGlobalRetriever::CLrLoader::run()</a>, <a class="el" href="a06758.html#l00432">NL3D::CZone::serial()</a>, <a class="el" href="a06702.html#l00186">NL3D::CVegetableShape::serial()</a>, <a class="el" href="a06477.html#l00329">NLPACS::CSurfaceQuadTree::serial()</a>, <a class="el" href="a06477.html#l00246">NLPACS::CQuadBranch::serial()</a>, <a class="el" href="a06476.html#l00076">NL3D::CSurfaceLightGrid::CCellCorner::serial()</a>, <a class="el" href="a06471.html#l00115">NLMISC::CStringStream::serial()</a>, <a class="el" href="a06463.html#l00087">serial()</a>, <a class="el" href="a06350.html#l00379">NL3D::CInstanceGroup::serial()</a>, <a class="el" href="a06350.html#l00065">NL3D::CInstanceGroup::CInstance::serial()</a>, <a class="el" href="a06337.html#l00736">NLPACS::CRetrieverInstance::serial()</a>, <a class="el" href="a06336.html#l00114">NLPACS::CRetrieverBank::serial()</a>, <a class="el" href="a06213.html#l00438">NL3D::CPSAttrib&lt; T &gt;::serial()</a>, <a class="el" href="a06193.html#l00216">NL3D::CPortal::serial()</a>, <a class="el" href="a06184.html#l00073">NL3D::CPointLightNamed::serial()</a>, <a class="el" href="a06179.html#l00230">NL3D::CPointLight::serial()</a>, <a class="el" href="a06155.html#l01576">NL3D::CPatch::serial()</a>, <a class="el" href="a06116.html#l00260">NLMISC::CObjectVector&lt; sint8, false &gt;::serial()</a>, <a class="el" href="a06107.html#l00315">NLMISC::COXml::serial()</a>, <a class="el" href="a06029.html#l00072">NLNET::TMessageRecord::serial()</a>, <a class="el" href="a06011.html#l00991">NL3D::CMeshMRMSkinnedGeom::serial()</a>, <a class="el" href="a05979.html#l00561">NLMISC::CMemStream::serial()</a>, <a class="el" href="a05972.html#l01500">NLMISC::CMatrix::serial()</a>, <a class="el" href="a05968.html#l00438">NL3D::CMaterial::CLightMap::serial()</a>, <a class="el" href="a05968.html#l00139">NL3D::CMaterial::serial()</a>, <a class="el" href="a05810.html#l00409">NLNET::CInetAddress::serial()</a>, <a class="el" href="a05792.html#l00117">NL3D::CHLSTextureBank::serial()</a>, <a class="el" href="a05761.html#l00136">NLPACS::CGlobalRetriever::serial()</a>, <a class="el" href="a05666.html#l00571">NLPACS::CEdgeQuad::serial()</a>, <a class="el" href="a05563.html#l00250">NL3D::CCluster::serial()</a>, <a class="el" href="a05541.html#l00473">NLPACS::CChainQuad::serial()</a>, <a class="el" href="a05539.html#l00158">NLPACS::COrderedChain::serial()</a>, <a class="el" href="a05484.html#l00294">NLMISC::CBitSet::serial()</a>, <a class="el" href="a05482.html#l00447">NLMISC::CBitMemStream::serial()</a>, <a class="el" href="a05437.html#l00045">NL3D::CMaterialBase::CAnimatedTexture::serial()</a>, <a class="el" href="a05384.html#l00337">NLMISC::CAABBoxExt::serial()</a>, <a class="el" href="a05968.html#l00456">NL3D::CMaterial::CLightMap::serial2()</a>, <a class="el" href="a06471.html#l00253">NLMISC::CStringStream::serialBit()</a>, <a class="el" href="a05978.html#l00117">NLMISC::CMemStream::serialBit()</a>, <a class="el" href="a05482.html#l00100">NLMISC::CBitMemStream::serialBit()</a>, <a class="el" href="a05978.html#l00073">NLMISC::CMemStream::serialBuffer()</a>, <a class="el" href="a05482.html#l00073">NLMISC::CBitMemStream::serialBuffer()</a>, <a class="el" href="a06462.html#l00520">serialCheck()</a>, <a class="el" href="a06471.html#l00340">NLMISC::CStringStream::serialCont()</a>, <a class="el" href="a06461.html#l00318">serialCont()</a>, <a class="el" href="a05482.html#l00591">NLMISC::CBitMemStream::serialCont()</a>, <a class="el" href="a06462.html#l00261">serialEnum()</a>, <a class="el" href="a06710.html#l00883">NL3D::CVertexBuffer::serialHeader()</a>, <a class="el" href="a06471.html#l00375">NLMISC::CStringStream::serialHex()</a>, <a class="el" href="a05979.html#l00929">NLMISC::CMemStream::serialHex()</a>, <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, <a class="el" href="a06005.html#l01918">NL3D::CMeshMRMGeom::serialLodVertexData()</a>, <a class="el" href="a06462.html#l01360">serialMap()</a>, <a class="el" href="a06461.html#l00436">serialMemStream()</a>, <a class="el" href="a05482.html#l00551">NLMISC::CBitMemStream::serialMemStream()</a>, <a class="el" href="a06026.html#l00472">NLNET::CMessage::serialMessage()</a>, <a class="el" href="a06462.html#l01271">serialMultimap()</a>, <a class="el" href="a06710.html#l00741">NL3D::CVertexBuffer::serialOldV1Minus()</a>, <a class="el" href="a06462.html#l00390">serialPtr()</a>, <a class="el" href="a06471.html#l00041">NLMISC::CStringStream::serialSeparatedBufferIn()</a>, <a class="el" href="a05978.html#l00307">NLMISC::CMemStream::serialSeparatedBufferIn()</a>, <a class="el" href="a06471.html#l00071">NLMISC::CStringStream::serialSeparatedBufferOut()</a>, <a class="el" href="a06107.html#l00160">NLMISC::COXml::serialSeparatedBufferOut()</a>, <a class="el" href="a05978.html#l00338">NLMISC::CMemStream::serialSeparatedBufferOut()</a>, <a class="el" href="a06462.html#l00955">serialSTLCont()</a>, <a class="el" href="a06462.html#l00905">serialSTLContLen()</a>, <a class="el" href="a06462.html#l01162">serialSTLContLenPolyPtr()</a>, <a class="el" href="a06462.html#l01056">serialSTLContLenPtr()</a>, <a class="el" href="a06462.html#l01192">serialSTLContPolyPtr()</a>, <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>, <a class="el" href="a06710.html#l01008">NL3D::CVertexBuffer::serialSubset()</a>, <a class="el" href="a06462.html#l00992">serialVector()</a>, <a class="el" href="a06462.html#l01215">serialVectorPolyPtr()</a>, <a class="el" href="a06462.html#l01121">serialVectorPtr()</a>, <a class="el" href="a06461.html#l00266">serialVersion()</a>, <a class="el" href="a06026.html#l00173">NLNET::CMessage::setType()</a>, <a class="el" href="a06027.html#l00164">NLNET::CMessage::unlockSubMessage()</a>, <a class="el" href="a05486.html#l02139">NLMISC::CBitmap::writeTGA()</a>, <a class="el" href="a06107.html#l00556">NLMISC::COXml::xmlBreakLineInternal()</a>, <a class="el" href="a06107.html#l00587">NLMISC::COXml::xmlCommentInternal()</a>, <a class="el" href="a06107.html#l00488">NLMISC::COXml::xmlPopInternal()</a>, <a class="el" href="a06107.html#l00394">NLMISC::COXml::xmlPushBeginInternal()</a>, <a class="el" href="a06107.html#l00457">NLMISC::COXml::xmlPushEndInternal()</a>, and <a class="el" href="a06107.html#l00522">NLMISC::COXml::xmlSetAttribInternal()</a>.
+<p>
+<div class="fragment"><pre>00065 {
+00066 <span class="keywordflow">return</span> <a class="code" href="a02270.html#NLMISC_1_1IStreamr1">_InputStream</a>;
+00067 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreama3" doxytag="NLMISC::IStream::isXML" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::isXML </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap> const<code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00221">221</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>.
+<p>
+Referenced by <a class="el" href="a05979.html#l00803">NLMISC::CMemStream::serial()</a>.
+<p>
+<div class="fragment"><pre>00221 { <span class="keywordflow">return</span> <a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a>; }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreama4" doxytag="NLMISC::IStream::operator=" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a02270.html">IStream</a> &amp; NLMISC::IStream::operator= </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const <a class="el" href="a02270.html">IStream</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>other</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Assignment operator.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06461.html#l00101">101</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06462.html#l00884">_InputStream</a>, and <a class="el" href="a06461.html#l00253">resetPtrTable()</a>.
+<p>
+Referenced by <a class="el" href="a06461.html#l00089">IStream()</a>.
+<p>
+<div class="fragment"><pre>00102 {
+00103 <a class="code" href="a02270.html#NLMISC_1_1IStreamr1">_InputStream</a> = other._InputStream;
+00104 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_0">resetPtrTable</a>();
+00105 <span class="keywordflow">return</span> *<span class="keyword">this</span>;
+00106 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2040_0" doxytag="NLMISC::IStream::resetPtrTable" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::resetPtrTable </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+for Deriver: reset the PtrTable in the stream. If Derived stream provide reset()-like methods, they must call this method in their reset() methods. For example, CFile::close() must call it, so it will work correctly with next <a class="el" href="a02270.html#NLMISC_1_1IStreamz2035_7">serialPtr()</a>
+<p>
+Reimplemented in <a class="el" href="a02271.html#NLMISC_1_1CStringStreama20">NLMISC::CMemStream</a>.
+<p>
+Definition at line <a class="el" href="a06461.html#l00253">253</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06462.html#l00890">_IdMap</a>, and <a class="el" href="a06462.html#l00889">_NextSerialPtrId</a>.
+<p>
+Referenced by <a class="el" href="a05708.html#l00255">NLMISC::CIFile::close()</a>, <a class="el" href="a06107.html#l00111">NLMISC::COXml::init()</a>, <a class="el" href="a05708.html#l00536">NLMISC::COFile::internalClose()</a>, <a class="el" href="a06463.html#l00055">IStream()</a>, and <a class="el" href="a06461.html#l00101">operator=()</a>.
+<p>
+<div class="fragment"><pre>00254 {
+00255 <a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.clear();
+00256 <a class="code" href="a02270.html#NLMISC_1_1IStreamr2">_NextSerialPtrId</a> = 1; <span class="comment">// Start at 1 because 0 is the NULL pointer</span>
+00257 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2036_3" doxytag="NLMISC::IStream::seek" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::seek </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>offset</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0">TSeekOrigin</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>origin</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Moves the stream pointer to a specified location.<p>
+NB: If the stream doesn't support the seek fonctionnality, it throw <a class="el" href="a03808.html">ESeekNotSupported</a>. Default implementation: { throw <a class="el" href="a03808.html">ESeekNotSupported</a>; } <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>offset</em>&nbsp;</td><td>is the wanted offset from the origin. </td></tr>
+ <tr><td valign=top><em>origin</em>&nbsp;</td><td>is the origin of the seek </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>Returns:</b></dt><dd>true if seek sucessfull. </dd></dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a03808.html">ESeekNotSupported</a> SeekOrigin <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_1">getPos</a></dd></dl>
+
+<p>
+Reimplemented in <a class="el" href="a02271.html#NLMISC_1_1CStringStreama22">NLMISC::CMemStream</a>.
+<p>
+Definition at line <a class="el" href="a06461.html#l00401">401</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a05646.html#l00645">offset</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+Referenced by <a class="el" href="a05486.html#l00109">NLMISC::CBitmap::load()</a>, <a class="el" href="a06005.html#l02001">NL3D::CMeshMRMGeom::loadNextLod()</a>, <a class="el" href="a05486.html#l02582">NLMISC::CBitmap::loadSize()</a>, <a class="el" href="a05486.html#l00244">NLMISC::CBitmap::readDDS()</a>, and <a class="el" href="a05486.html#l01800">NLMISC::CBitmap::readTGA()</a>.
+<p>
+<div class="fragment"><pre>00402 {
+00403 <span class="keywordflow">throw</span> ESeekNotSupported(*<span class="keyword">this</span>);
+00404 <span class="keywordflow">return</span> <span class="keyword">false</span>;
+00405 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2032_0" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T0, class T1, class T2, class T3, class T4, class T5&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T0 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T1 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T2 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T3 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>d</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T4 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>e</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T5 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>f</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02271.html#NLNET_1_1CMessagea36">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama23">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00313">313</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>.
+<p>
+<div class="fragment"><pre>00314 { <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(a); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(c); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(d); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(e); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(f);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2032_1" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T0, class T1, class T2, class T3, class T4&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T0 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T1 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T2 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T3 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>d</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T4 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>e</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02271.html#NLNET_1_1CMessagea37">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama24">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00310">310</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>.
+<p>
+<div class="fragment"><pre>00311 { <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(a); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(c); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(d); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(e);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2032_2" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T0, class T1, class T2, class T3&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T0 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T1 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T2 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T3 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>d</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02271.html#NLNET_1_1CMessagea38">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama25">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00307">307</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>.
+<p>
+<div class="fragment"><pre>00308 { <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(a); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(c); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(d);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2032_3" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T0, class T1, class T2&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T0 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T1 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>b</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T2 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>c</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02271.html#NLNET_1_1CMessagea39">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama26">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00304">304</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>.
+<p>
+<div class="fragment"><pre>00305 { <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(a); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(c);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2032_4" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T0, class T1&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T0 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>a</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T1 &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>b</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02271.html#NLNET_1_1CMessagea40">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama27">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00301">301</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>.
+<p>
+<div class="fragment"><pre>00302 { <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(a); <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_0" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a03924.html">ucstring</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama7">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama5">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_1">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_0">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld1">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_0">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00304">304</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05981.html#l00104">sint</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+<div class="fragment"><pre>00305 {
+00306 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+00307 <span class="comment">// Read/Write the length.</span>
+00308 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00309 {
+00310 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00311 b.resize(len);
+00312 }
+00313 <span class="keywordflow">else</span>
+00314 {
+00315 <a class="code" href="a04223.html#a571">len</a>= b.size();
+00316 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00317 }
+00318 <span class="comment">// Read/Write the string.</span>
+00319 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+00320 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b[i]);
+00321 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_1" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::string &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama8">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama6">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_2">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_1">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld2">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_1">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00277">277</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a05622.html#l00135">nlwarning</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05981.html#l00104">sint</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+<div class="fragment"><pre>00278 {
+00279 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+00280 <span class="comment">// Read/Write the length.</span>
+00281 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00282 {
+00283 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00284 <span class="comment">// nlassert( len&lt;1000000 ); // limiting string size</span>
+00285 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a571">len</a>&gt;1000000)
+00286 {
+00287 <a class="code" href="a04199.html#a2">nlwarning</a>(<span class="stringliteral">"Trying to serialize a string of %u character !"</span>, len);
+00288 <span class="keywordflow">throw</span> <a class="code" href="a03824.html">NLMISC::EStreamOverflow</a>();
+00289 }
+00290 b.resize(len);
+00291 }
+00292 <span class="keywordflow">else</span>
+00293 {
+00294 <a class="code" href="a04223.html#a571">len</a>= b.size();
+00295 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00296 }
+00297 <span class="comment">// Read/Write the string.</span>
+00298 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+00299 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b[i]);
+00300 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_2" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">char &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama9">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama7">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_3">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_2">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld3">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_2">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00270">270</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+<div class="fragment"><pre>00271 {
+00272 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 1);
+00273 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_3" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama12">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama10">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_4">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_3">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld4">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_3">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00263">263</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_0">serialBit()</a>.
+<p>
+<div class="fragment"><pre>00264 {
+00265 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_0">serialBit</a>(b);
+00266 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_4" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">double &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama13">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama11">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_5">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_4">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld5">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_4">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00241">241</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00062">NLMISC_BSWAP64</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00102">uint64</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00242 {
+00243 <span class="preprocessor">#ifdef NL_LITTLE_ENDIAN</span>
+00244 <span class="preprocessor"></span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 8);
+00245 <span class="preprocessor">#else // NL_LITTLE_ENDIAN</span>
+00246 <span class="preprocessor"></span> <a class="code" href="a04558.html#a13">uint64</a> <a class="code" href="a04223.html#a576">v</a>;
+00247 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00248 {
+00249 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 8);
+00250 <a class="code" href="a05039.html#a2">NLMISC_BSWAP64</a>(v);
+00251 b=*((<span class="keywordtype">double</span>*)&amp;<a class="code" href="a04223.html#a576">v</a>);
+00252 }
+00253 <span class="keywordflow">else</span>
+00254 {
+00255 <a class="code" href="a04223.html#a576">v</a>=*((<a class="code" href="a04558.html#a13">uint64</a>*)&amp;b);
+00256 <a class="code" href="a05039.html#a2">NLMISC_BSWAP64</a>(v);
+00257 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 8);
+00258 }
+00259 <span class="preprocessor">#endif // NL_LITTLE_ENDIAN</span>
+00260 <span class="preprocessor"></span>}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_5" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">float &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama14">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama12">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_6">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_5">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld6">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_5">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00219">219</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00060">NLMISC_BSWAP32</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00220 {
+00221 <span class="preprocessor">#ifdef NL_LITTLE_ENDIAN</span>
+00222 <span class="preprocessor"></span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 4);
+00223 <span class="preprocessor">#else // NL_LITTLE_ENDIAN</span>
+00224 <span class="preprocessor"></span> <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a04223.html#a576">v</a>;
+00225 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00226 {
+00227 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 4);
+00228 <a class="code" href="a05039.html#a1">NLMISC_BSWAP32</a>(v);
+00229 b=*((<span class="keywordtype">float</span>*)&amp;<a class="code" href="a04223.html#a576">v</a>);
+00230 }
+00231 <span class="keywordflow">else</span>
+00232 {
+00233 <a class="code" href="a04223.html#a576">v</a>=*((<a class="code" href="a04558.html#a11">uint32</a>*)&amp;b);
+00234 <a class="code" href="a05039.html#a1">NLMISC_BSWAP32</a>(v);
+00235 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 4);
+00236 }
+00237 <span class="preprocessor">#endif // NL_LITTLE_ENDIAN</span>
+00238 <span class="preprocessor"></span>}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_6" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a12">sint64</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama15">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama13">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_7">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_6">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld7">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_6">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00197">197</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00062">NLMISC_BSWAP64</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00101">sint64</a>, <a class="el" href="a05981.html#l00102">uint64</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00198 {
+00199 <span class="preprocessor">#ifdef NL_LITTLE_ENDIAN</span>
+00200 <span class="preprocessor"></span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 8);
+00201 <span class="preprocessor">#else // NL_LITTLE_ENDIAN</span>
+00202 <span class="preprocessor"></span> <a class="code" href="a04558.html#a13">uint64</a> <a class="code" href="a04223.html#a576">v</a>;
+00203 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00204 {
+00205 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 8);
+00206 <a class="code" href="a05039.html#a2">NLMISC_BSWAP64</a>(v);
+00207 b=<a class="code" href="a04223.html#a576">v</a>;
+00208 }
+00209 <span class="keywordflow">else</span>
+00210 {
+00211 <a class="code" href="a04223.html#a576">v</a>=b;
+00212 <a class="code" href="a05039.html#a2">NLMISC_BSWAP64</a>(v);
+00213 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 8);
+00214 }
+00215 <span class="preprocessor">#endif // NL_LITTLE_ENDIAN</span>
+00216 <span class="preprocessor"></span>}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_7" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a13">uint64</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama16">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama14">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_8">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_7">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld8">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_7">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00175">175</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00062">NLMISC_BSWAP64</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00102">uint64</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00176 {
+00177 <span class="preprocessor">#ifdef NL_LITTLE_ENDIAN</span>
+00178 <span class="preprocessor"></span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 8);
+00179 <span class="preprocessor">#else // NL_LITTLE_ENDIAN</span>
+00180 <span class="preprocessor"></span> <a class="code" href="a04558.html#a13">uint64</a> <a class="code" href="a04223.html#a576">v</a>;
+00181 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00182 {
+00183 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 8);
+00184 <a class="code" href="a05039.html#a2">NLMISC_BSWAP64</a>(v);
+00185 b=<a class="code" href="a04223.html#a576">v</a>;
+00186 }
+00187 <span class="keywordflow">else</span>
+00188 {
+00189 <a class="code" href="a04223.html#a576">v</a>=b;
+00190 <a class="code" href="a05039.html#a2">NLMISC_BSWAP64</a>(v);
+00191 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 8);
+00192 }
+00193 <span class="preprocessor">#endif // NL_LITTLE_ENDIAN</span>
+00194 <span class="preprocessor"></span>}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_8" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a10">sint32</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama17">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama15">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_9">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_8">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld9">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_8">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00153">153</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00060">NLMISC_BSWAP32</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00154 {
+00155 <span class="preprocessor">#ifdef NL_LITTLE_ENDIAN</span>
+00156 <span class="preprocessor"></span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 4);
+00157 <span class="preprocessor">#else // NL_LITTLE_ENDIAN</span>
+00158 <span class="preprocessor"></span> <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a04223.html#a576">v</a>;
+00159 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00160 {
+00161 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 4);
+00162 <a class="code" href="a05039.html#a1">NLMISC_BSWAP32</a>(v);
+00163 b=<a class="code" href="a04223.html#a576">v</a>;
+00164 }
+00165 <span class="keywordflow">else</span>
+00166 {
+00167 <a class="code" href="a04223.html#a576">v</a>=b;
+00168 <a class="code" href="a05039.html#a1">NLMISC_BSWAP32</a>(v);
+00169 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 4);
+00170 }
+00171 <span class="preprocessor">#endif // NL_LITTLE_ENDIAN</span>
+00172 <span class="preprocessor"></span>}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_9" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama18">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama16">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_10">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_9">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld10">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_9">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00131">131</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00060">NLMISC_BSWAP32</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00132 {
+00133 <span class="preprocessor">#ifdef NL_LITTLE_ENDIAN</span>
+00134 <span class="preprocessor"></span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 4);
+00135 <span class="preprocessor">#else // NL_LITTLE_ENDIAN</span>
+00136 <span class="preprocessor"></span> <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a04223.html#a576">v</a>;
+00137 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00138 {
+00139 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 4);
+00140 <a class="code" href="a05039.html#a1">NLMISC_BSWAP32</a>(v);
+00141 b=<a class="code" href="a04223.html#a576">v</a>;
+00142 }
+00143 <span class="keywordflow">else</span>
+00144 {
+00145 <a class="code" href="a04223.html#a576">v</a>=b;
+00146 <a class="code" href="a05039.html#a1">NLMISC_BSWAP32</a>(v);
+00147 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 4);
+00148 }
+00149 <span class="preprocessor">#endif // NL_LITTLE_ENDIAN</span>
+00150 <span class="preprocessor"></span>}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_10" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a8">sint16</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama19">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama17">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_11">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_10">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld11">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_10">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00109">109</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00056">NLMISC_BSWAP16</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00097">sint16</a>, <a class="el" href="a05981.html#l00098">uint16</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00110 {
+00111 <span class="preprocessor">#ifdef NL_LITTLE_ENDIAN</span>
+00112 <span class="preprocessor"></span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 2);
+00113 <span class="preprocessor">#else // NL_LITTLE_ENDIAN</span>
+00114 <span class="preprocessor"></span> <a class="code" href="a04558.html#a9">uint16</a> <a class="code" href="a04223.html#a576">v</a>;
+00115 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00116 {
+00117 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 2);
+00118 <a class="code" href="a05039.html#a0">NLMISC_BSWAP16</a>(v);
+00119 b=<a class="code" href="a04223.html#a576">v</a>;
+00120 }
+00121 <span class="keywordflow">else</span>
+00122 {
+00123 <a class="code" href="a04223.html#a576">v</a>=b;
+00124 <a class="code" href="a05039.html#a0">NLMISC_BSWAP16</a>(v);
+00125 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 2);
+00126 }
+00127 <span class="preprocessor">#endif // NL_LITTLE_ENDIAN</span>
+00128 <span class="preprocessor"></span>}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_11" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a9">uint16</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama20">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama18">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_12">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_11">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld12">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_11">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00087">87</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00056">NLMISC_BSWAP16</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00098">uint16</a>, <a class="el" href="a05981.html#l00096">uint8</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+<div class="fragment"><pre>00088 {
+00089 <span class="preprocessor">#ifdef NL_LITTLE_ENDIAN</span>
+00090 <span class="preprocessor"></span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 2);
+00091 <span class="preprocessor">#else // NL_LITTLE_ENDIAN</span>
+00092 <span class="preprocessor"></span> <a class="code" href="a04558.html#a9">uint16</a> <a class="code" href="a04223.html#a576">v</a>;
+00093 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00094 {
+00095 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 2);
+00096 <a class="code" href="a05039.html#a0">NLMISC_BSWAP16</a>(v);
+00097 b=<a class="code" href="a04223.html#a576">v</a>;
+00098 }
+00099 <span class="keywordflow">else</span>
+00100 {
+00101 <a class="code" href="a04223.html#a576">v</a>=b;
+00102 <a class="code" href="a05039.html#a0">NLMISC_BSWAP16</a>(v);
+00103 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;v, 2);
+00104 }
+00105 <span class="preprocessor">#endif // NL_LITTLE_ENDIAN</span>
+00106 <span class="preprocessor"></span>}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_12" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a6">sint8</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama21">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama19">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_13">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_12">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld13">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_12">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00081">81</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00095">sint8</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+<div class="fragment"><pre>00082 {
+00083 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 1);
+00084 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2028_13" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a7">uint8</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama22">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama20">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreamz1916_14">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagez1972_13">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld14">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreamz2043_13">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06463.html#l00075">75</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+<div class="fragment"><pre>00076 {
+00077 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>((<a class="code" href="a04558.html#a7">uint8</a> *)&amp;b, 1);
+00078 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreama5" doxytag="NLMISC::IStream::serial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>obj</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Template Object serialisation. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>obj</em>&nbsp;</td><td>any object providing a "void serial(IStream&amp;)" method. The object doesn't have to derive from <a class="el" href="a02867.html">IStreamable</a>.</td></tr>
+ </table>
+</dl>
+the VC++ error "error C2228: left of '.serial' must have class/struct/union type" means you don't provide a <a class="el" href="a02270.html#NLMISC_1_1IStreama5">serial()</a> method to your object. Or you may have use serial with a int / uint / sint type. REMEMBER YOU CANNOT do this, since those type have unspecified length.
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama36">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea41">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama28">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00232">232</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a05465.html#l00560">NLSOUND::CAudioMixerUser::buildSampleBankList()</a>, <a class="el" href="a05673.html#l00178">NLMISC::CEntityId::CEntityId()</a>, <a class="el" href="a05805.html#l00332">NLAIAGENT::CIdent::CIdent()</a>, <a class="el" href="a05475.html#l00521">NLAIAGENT::IConnectIA::connectLoadStream()</a>, <a class="el" href="a06047.html#l00043">H_AUTO_DECL()</a>, <a class="el" href="a06005.html#l00055">NL3D::H_AUTO_DECL()</a>, <a class="el" href="a06671.html#l00332">NLAISCRIPT::CVarPStackParam::load()</a>, <a class="el" href="a06671.html#l00111">NLAISCRIPT::CVarPStack::load()</a>, <a class="el" href="a06669.html#l00084">NLAILOGIC::CVarSet::load()</a>, <a class="el" href="a06660.html#l00190">NLAILOGIC::CVar::load()</a>, <a class="el" href="a06658.html#l00399">NLAILOGIC::CValueSet::load()</a>, <a class="el" href="a06378.html#l00427">NL3D::CShapeBank::load()</a>, <a class="el" href="a06356.html#l00155">NLAISCRIPT::CScriptDebugSourceMemory::load()</a>, <a class="el" href="a06356.html#l00099">NLAISCRIPT::CScriptDebugSourceFile::load()</a>, <a class="el" href="a06346.html#l00228">NLSOUND::CSampleBank::load()</a>, <a class="el" href="a06328.html#l00221">NLAIC::CBinaryType::load()</a>, <a class="el" href="a06131.html#l00122">NLAILOGIC::IBaseOperator::load()</a>, <a class="el" href="a06127.html#l00359">NLAISCRIPT::CLdbRefOpCode::load()</a>, <a class="el" href="a06127.html#l00304">NLAISCRIPT::CLdbHeapMemberiOpCode::load()</a>, <a class="el" href="a06127.html#l00132">NLAISCRIPT::CLdbMemberOpCode::load()</a>, <a class="el" href="a06127.html#l00072">NLAISCRIPT::CLdbOpCode::load()</a>, <a class="el" href="a06125.html#l00437">NLAISCRIPT::CCallMethodi::load()</a>, <a class="el" href="a06125.html#l00315">NLAISCRIPT::CCallStackMethodi::load()</a>, <a class="el" href="a06125.html#l00242">NLAISCRIPT::CCallHeapMethodi::load()</a>, <a class="el" href="a06125.html#l00168">NLAISCRIPT::CCallMethod::load()</a>, <a class="el" href="a06123.html#l00537">NLAISCRIPT::CLibHeapMemberMethod::load()</a>, <a class="el" href="a06123.html#l00439">NLAISCRIPT::CLibStackMemberMethod::load()</a>, <a class="el" href="a06123.html#l00370">NLAISCRIPT::CLibCallMethodi::load()</a>, <a class="el" href="a06123.html#l00303">NLAISCRIPT::CLibCallInheritedMethod::load()</a>, <a class="el" href="a06123.html#l00241">NLAISCRIPT::CLibCallMethod::load()</a>, <a class="el" href="a06123.html#l00184">NLAISCRIPT::CLibMemberMethodi::load()</a>, <a class="el" href="a06123.html#l00125">NLAISCRIPT::CLibMemberInheritedMethod::load()</a>, <a class="el" href="a06123.html#l00072">NLAISCRIPT::CLibMemberMethod::load()</a>, <a class="el" href="a06121.html#l01742">NLAISCRIPT::CMarkMsg::load()</a>, <a class="el" href="a06121.html#l01229">NLAISCRIPT::CAffMemberOpCode::load()</a>, <a class="el" href="a06121.html#l01099">NLAISCRIPT::CAffHeapMemberiOpCode::load()</a>, <a class="el" href="a06121.html#l01001">NLAISCRIPT::CAffOpCode::load()</a>, <a class="el" href="a06121.html#l00918">NLAISCRIPT::CJmpOpCode::load()</a>, <a class="el" href="a06121.html#l00854">NLAISCRIPT::CJFalseOpCode::load()</a>, <a class="el" href="a06120.html#l00758">NLAISCRIPT::CAddParamNameDebug::load()</a>, <a class="el" href="a06120.html#l00658">NLAISCRIPT::CFindRunMsg::load()</a>, <a class="el" href="a06120.html#l00502">NLAISCRIPT::CAffOpCodeDebug::load()</a>, <a class="el" href="a06112.html#l00217">NLAISCRIPT::CLoadHeapObject::load()</a>, <a class="el" href="a06077.html#l00075">NLAIAGENT::CMessageGroup::load()</a>, <a class="el" href="a06065.html#l00236">NLAIAGENT::IMessageBase::load()</a>, <a class="el" href="a05964.html#l00194">NLAIAGENT::CLocalMailBox::load()</a>, <a class="el" href="a05911.html#l00061">NLAIAGENT::IListBasicManager::load()</a>, <a class="el" href="a05847.html#l00783">NLAISCRIPT::CAgentClass::load()</a>, <a class="el" href="a05845.html#l00038">NLAISCRIPT::CComponent::load()</a>, <a class="el" href="a05843.html#l00404">NLAISCRIPT::CMethodeName::load()</a>, <a class="el" href="a05843.html#l00218">NLAISCRIPT::CParam::load()</a>, <a class="el" href="a05805.html#l00376">NLAIAGENT::CIdent::load()</a>, <a class="el" href="a05803.html#l00267">NLAIAGENT::CIndexVariant&lt; T, indexMax, maxT &gt;::load()</a>, <a class="el" href="a05770.html#l01055">NLAIAGENT::CVectorGroupType::load()</a>, <a class="el" href="a05770.html#l00643">NLAIAGENT::CGroupType::load()</a>, <a class="el" href="a05753.html#l00201">NLAIFUZZY::CFuzzyVar::load()</a>, <a class="el" href="a05751.html#l00052">NLAIFUZZY::FuzzyType::load()</a>, <a class="el" href="a05749.html#l00523">NLAIFUZZY::CTriangleFuzzySet::load()</a>, <a class="el" href="a05745.html#l00145">NLAIFUZZY::CFuzzyRule::load()</a>, <a class="el" href="a05697.html#l00168">NLAILOGIC::CFactBase::load()</a>, <a class="el" href="a05673.html#l00443">NLMISC::CEntityId::load()</a>, <a class="el" href="a05573.html#l00114">NLAISCRIPT::CCodeBrancheRunDebug::load()</a>, <a class="el" href="a05571.html#l00061">NLAISCRIPT::CCodeBrancheRun::load()</a>, <a class="el" href="a05545.html#l00098">NLAICHARACTER::CCharacterChild::load()</a>, <a class="el" href="a05499.html#l00082">NLAILOGIC::CBoolOperator::load()</a>, <a class="el" href="a05495.html#l00093">NLAILOGIC::CBoolAssert::load()</a>, <a class="el" href="a05486.html#l00109">NLMISC::CBitmap::load()</a>, <a class="el" href="a05477.html#l00153">NLAIAGENT::IAgentComposite::load()</a>, <a class="el" href="a05471.html#l00618">NLSOUND::CBackgroundSoundManager::load()</a>, <a class="el" href="a05415.html#l00188">NLAIAGENT::CStringVarName::load()</a>, <a class="el" href="a05412.html#l00605">NLAIAGENT::CAgentScript::load()</a>, <a class="el" href="a05407.html#l00087">NLAIAGENT::CStringType::load()</a>, <a class="el" href="a05405.html#l00157">NLAIAGENT::INombre&lt; sint32 &gt;::load()</a>, <a class="el" href="a05398.html#l00104">NLAIAGENT::IAgentInput::load()</a>, <a class="el" href="a05395.html#l00083">NLAIAGENT::IVector::load()</a>, <a class="el" href="a05389.html#l00438">NLAIAGENT::CActorScript::load()</a>, <a class="el" href="a05414.html#l00095">NLAIAGENT::CIndexedVarName::loadClass()</a>, <a class="el" href="a06005.html#l01951">NL3D::CMeshMRMGeom::loadFirstLod()</a>, <a class="el" href="a05926.html#l00145">loadForm()</a>, <a class="el" href="a05657.html#l01393">NL3D::CDriverUser::loadHLSBank()</a>, <a class="el" href="a06589.html#l00982">NLAISCRIPT::IOpType::loadIOpType()</a>, <a class="el" href="a06005.html#l02001">NL3D::CMeshMRMGeom::loadNextLod()</a>, <a class="el" href="a05486.html#l02582">NLMISC::CBitmap::loadSize()</a>, <a class="el" href="a06536.html#l01570">NL3D::CTileSet::loadTileVegetableDesc()</a>, <a class="el" href="a05486.html#l00244">NLMISC::CBitmap::readDDS()</a>, <a class="el" href="a05486.html#l01800">NLMISC::CBitmap::readTGA()</a>, <a class="el" href="a05475.html#l00433">NLAIAGENT::IRefrence::refLoadStream()</a>, <a class="el" href="a05457.html#l00231">NL3D::CAsyncFileManager3D::CMeshLoad::run()</a>, <a class="el" href="a06671.html#l00324">NLAISCRIPT::CVarPStackParam::save()</a>, <a class="el" href="a06671.html#l00105">NLAISCRIPT::CVarPStack::save()</a>, <a class="el" href="a06669.html#l00071">NLAILOGIC::CVarSet::save()</a>, <a class="el" href="a06660.html#l00172">NLAILOGIC::CVar::save()</a>, <a class="el" href="a06658.html#l00369">NLAILOGIC::CValueSet::save()</a>, <a class="el" href="a06356.html#l00148">NLAISCRIPT::CScriptDebugSourceMemory::save()</a>, <a class="el" href="a06356.html#l00093">NLAISCRIPT::CScriptDebugSourceFile::save()</a>, <a class="el" href="a06328.html#l00210">NLAIC::CBinaryType::save()</a>, <a class="el" href="a06131.html#l00102">NLAILOGIC::IBaseOperator::save()</a>, <a class="el" href="a06127.html#l00353">NLAISCRIPT::CLdbRefOpCode::save()</a>, <a class="el" href="a06127.html#l00296">NLAISCRIPT::CLdbHeapMemberiOpCode::save()</a>, <a class="el" href="a06127.html#l00126">NLAISCRIPT::CLdbMemberOpCode::save()</a>, <a class="el" href="a06127.html#l00066">NLAISCRIPT::CLdbOpCode::save()</a>, <a class="el" href="a06125.html#l00427">NLAISCRIPT::CCallMethodi::save()</a>, <a class="el" href="a06125.html#l00305">NLAISCRIPT::CCallStackMethodi::save()</a>, <a class="el" href="a06125.html#l00230">NLAISCRIPT::CCallHeapMethodi::save()</a>, <a class="el" href="a06125.html#l00160">NLAISCRIPT::CCallMethod::save()</a>, <a class="el" href="a06123.html#l00530">NLAISCRIPT::CLibHeapMemberMethod::save()</a>, <a class="el" href="a06123.html#l00429">NLAISCRIPT::CLibStackMemberMethod::save()</a>, <a class="el" href="a06123.html#l00358">NLAISCRIPT::CLibCallMethodi::save()</a>, <a class="el" href="a06123.html#l00293">NLAISCRIPT::CLibCallInheritedMethod::save()</a>, <a class="el" href="a06123.html#l00233">NLAISCRIPT::CLibCallMethod::save()</a>, <a class="el" href="a06123.html#l00174">NLAISCRIPT::CLibMemberMethodi::save()</a>, <a class="el" href="a06123.html#l00117">NLAISCRIPT::CLibMemberInheritedMethod::save()</a>, <a class="el" href="a06123.html#l00066">NLAISCRIPT::CLibMemberMethod::save()</a>, <a class="el" href="a06121.html#l01734">NLAISCRIPT::CMarkMsg::save()</a>, <a class="el" href="a06121.html#l01223">NLAISCRIPT::CAffMemberOpCode::save()</a>, <a class="el" href="a06121.html#l01091">NLAISCRIPT::CAffHeapMemberiOpCode::save()</a>, <a class="el" href="a06121.html#l00995">NLAISCRIPT::CAffOpCode::save()</a>, <a class="el" href="a06121.html#l00912">NLAISCRIPT::CJmpOpCode::save()</a>, <a class="el" href="a06121.html#l00848">NLAISCRIPT::CJFalseOpCode::save()</a>, <a class="el" href="a06121.html#l00096">NLAISCRIPT::CLdbNewOpCode::save()</a>, <a class="el" href="a06120.html#l00752">NLAISCRIPT::CAddParamNameDebug::save()</a>, <a class="el" href="a06120.html#l00647">NLAISCRIPT::CFindRunMsg::save()</a>, <a class="el" href="a06120.html#l00494">NLAISCRIPT::CAffOpCodeDebug::save()</a>, <a class="el" href="a06112.html#l00210">NLAISCRIPT::CLoadHeapObject::save()</a>, <a class="el" href="a06077.html#l00069">NLAIAGENT::CMessageGroup::save()</a>, <a class="el" href="a06065.html#l00190">NLAIAGENT::IMessageBase::save()</a>, <a class="el" href="a05964.html#l00170">NLAIAGENT::CLocalMailBox::save()</a>, <a class="el" href="a05911.html#l00055">NLAIAGENT::IListBasicManager::save()</a>, <a class="el" href="a05847.html#l00760">NLAISCRIPT::CAgentClass::save()</a>, <a class="el" href="a05845.html#l00030">NLAISCRIPT::CComponent::save()</a>, <a class="el" href="a05843.html#l00395">NLAISCRIPT::CMethodeName::save()</a>, <a class="el" href="a05843.html#l00235">NLAISCRIPT::CParam::save()</a>, <a class="el" href="a05805.html#l00369">NLAIAGENT::CIdent::save()</a>, <a class="el" href="a05803.html#l00254">NLAIAGENT::CIndexVariant&lt; T, indexMax, maxT &gt;::save()</a>, <a class="el" href="a05770.html#l01030">NLAIAGENT::CVectorGroupType::save()</a>, <a class="el" href="a05770.html#l00618">NLAIAGENT::CGroupType::save()</a>, <a class="el" href="a05753.html#l00187">NLAIFUZZY::CFuzzyVar::save()</a>, <a class="el" href="a05751.html#l00043">NLAIFUZZY::FuzzyType::save()</a>, <a class="el" href="a05749.html#l00753">NLAIFUZZY::CTrapezeFuzzySet::save()</a>, <a class="el" href="a05749.html#l00631">NLAIFUZZY::CLeftFuzzySet::save()</a>, <a class="el" href="a05749.html#l00515">NLAIFUZZY::CTriangleFuzzySet::save()</a>, <a class="el" href="a05749.html#l00239">NLAIFUZZY::CRightFuzzySet::save()</a>, <a class="el" href="a05749.html#l00133">NLAIFUZZY::CFuzzyInterval::save()</a>, <a class="el" href="a05697.html#l00154">NLAILOGIC::CFactBase::save()</a>, <a class="el" href="a05673.html#l00426">NLMISC::CEntityId::save()</a>, <a class="el" href="a05573.html#l00101">NLAISCRIPT::CCodeBrancheRunDebug::save()</a>, <a class="el" href="a05571.html#l00042">NLAISCRIPT::CCodeBrancheRun::save()</a>, <a class="el" href="a05545.html#l00189">NLAICHARACTER::CCharacterNoeud::save()</a>, <a class="el" href="a05545.html#l00092">NLAICHARACTER::CCharacterChild::save()</a>, <a class="el" href="a05501.html#l00067">NLAILOGIC::CBoolType::save()</a>, <a class="el" href="a05499.html#l00060">NLAILOGIC::CBoolOperator::save()</a>, <a class="el" href="a05495.html#l00087">NLAILOGIC::CBoolAssert::save()</a>, <a class="el" href="a05477.html#l00138">NLAIAGENT::IAgentComposite::save()</a>, <a class="el" href="a05475.html#l00414">NLAIAGENT::IRefrence::save()</a>, <a class="el" href="a05475.html#l00036">NLAIAGENT::IConnectIA::save()</a>, <a class="el" href="a05415.html#l00180">NLAIAGENT::CStringVarName::save()</a>, <a class="el" href="a05414.html#l00268">NLAIAGENT::CIndexedVarName::save()</a>, <a class="el" href="a05412.html#l00593">NLAIAGENT::CAgentScript::save()</a>, <a class="el" href="a05407.html#l00081">NLAIAGENT::CStringType::save()</a>, <a class="el" href="a05405.html#l00150">NLAIAGENT::INombre&lt; sint32 &gt;::save()</a>, <a class="el" href="a05401.html#l00063">NLAIAGENT::CLocalAgentMail::save()</a>, <a class="el" href="a05398.html#l00097">NLAIAGENT::IAgentInput::save()</a>, <a class="el" href="a05395.html#l00078">NLAIAGENT::IVector::save()</a>, <a class="el" href="a05389.html#l00431">NLAIAGENT::CActorScript::save()</a>, <a class="el" href="a05387.html#l00167">NLAIAGENT::CActor::save()</a>, <a class="el" href="a05414.html#l00074">NLAIAGENT::CIndexedVarName::saveClass()</a>, <a class="el" href="a06336.html#l00185">NLPACS::CRetrieverBank::saveRetrievers()</a>, <a class="el" href="a06758.html#l00432">NL3D::CZone::serial()</a>, <a class="el" href="a06758.html#l00410">NL3D::CZone::CPatchConnect::serial()</a>, <a class="el" href="a06710.html#l01060">NL3D::CPaletteSkin::serial()</a>, <a class="el" href="a06702.html#l00186">NL3D::CVegetableShape::serial()</a>, <a class="el" href="a06686.html#l00375">NL3D::CVegetable::serial()</a>, <a class="el" href="a06685.html#l00183">NLMISC::CVectorD::serial()</a>, <a class="el" href="a06682.html#l00198">NLMISC::CVector::serial()</a>, <a class="el" href="a06679.html#l00171">NLPACS::CVector2s::serial()</a>, <a class="el" href="a06677.html#l00127">NLMISC::CVector2f::serial()</a>, <a class="el" href="a06675.html#l00125">NLMISC::CVector2d::serial()</a>, <a class="el" href="a06655.html#l00140">NLMISC::CUVW::serial()</a>, <a class="el" href="a06655.html#l00082">NLMISC::CUV::serial()</a>, <a class="el" href="a06564.html#l00062">NL3D::CTrackSampledVector::serial()</a>, <a class="el" href="a06563.html#l00100">NL3D::CTrackSampledQuat::CQuatPack::serial()</a>, <a class="el" href="a06562.html#l00125">NL3D::CTrackSampledQuat::serial()</a>, <a class="el" href="a06560.html#l00080">NL3D::CTrackSampledCommon::CTimeBlock::serial()</a>, <a class="el" href="a06550.html#l00099">NL3D::CTileVegetableDesc::serial()</a>, <a class="el" href="a06544.html#l00067">NL3D::CTileLightInfluence::serial()</a>, <a class="el" href="a06536.html#l01912">NL3D::CTileNoise::serial()</a>, <a class="el" href="a06478.html#l00080">NLPACS::IQuadNode::serial()</a>, <a class="el" href="a06477.html#l00329">NLPACS::CSurfaceQuadTree::serial()</a>, <a class="el" href="a06477.html#l00246">NLPACS::CQuadBranch::serial()</a>, <a class="el" href="a06476.html#l00076">NL3D::CSurfaceLightGrid::CCellCorner::serial()</a>, <a class="el" href="a06475.html#l00051">NL3D::CSurfaceLightGrid::serial()</a>, <a class="el" href="a06462.html#l00301">serial()</a>, <a class="el" href="a06399.html#l00083">NL3D::CSkeletonWeight::CNode::serial()</a>, <a class="el" href="a06367.html#l00098">CHashKey::serial()</a>, <a class="el" href="a06350.html#l00379">NL3D::CInstanceGroup::serial()</a>, <a class="el" href="a06350.html#l00065">NL3D::CInstanceGroup::CInstance::serial()</a>, <a class="el" href="a06338.html#l00071">NLPACS::CRetrieverInstance::CLink::serial()</a>, <a class="el" href="a06337.html#l00736">NLPACS::CRetrieverInstance::serial()</a>, <a class="el" href="a06336.html#l00114">NLPACS::CRetrieverBank::serial()</a>, <a class="el" href="a06334.html#l00090">NLPACS::CRetrievableSurface::CSurfaceLink::serial()</a>, <a class="el" href="a06333.html#l00097">NLPACS::CRetrievableSurface::TLoop::serial()</a>, <a class="el" href="a06333.html#l00051">NLPACS::CRetrievableSurface::serial()</a>, <a class="el" href="a06308.html#l00168">NLMISC::CQuatT&lt; float &gt;::serial()</a>, <a class="el" href="a06308.html#l00059">NLMISC::CAngleAxis::serial()</a>, <a class="el" href="a06213.html#l00438">NL3D::CPSAttrib&lt; T &gt;::serial()</a>, <a class="el" href="a06197.html#l00219">NL3D::CPrimitiveBlock::serial()</a>, <a class="el" href="a06193.html#l00216">NL3D::CPortal::serial()</a>, <a class="el" href="a06187.html#l00119">NL3D::CPointLightNamedArray::CPointLightGroupV0::serial()</a>, <a class="el" href="a06187.html#l00100">NL3D::CPointLightNamedArray::CPointLightGroup::serial()</a>, <a class="el" href="a06184.html#l00073">NL3D::CPointLightNamed::serial()</a>, <a class="el" href="a06179.html#l00230">NL3D::CPointLight::serial()</a>, <a class="el" href="a06171.html#l00155">NLMISC::CPlane::serial()</a>, <a class="el" href="a06156.html#l00127">NL3D::CVector3s::serial()</a>, <a class="el" href="a06155.html#l01576">NL3D::CPatch::serial()</a>, <a class="el" href="a06116.html#l00260">NLMISC::CObjectVector&lt; sint8, false &gt;::serial()</a>, <a class="el" href="a06105.html#l00337">NLMISC::CNoiseColorGradient::serial()</a>, <a class="el" href="a06105.html#l00294">NLMISC::CNoiseValue::serial()</a>, <a class="el" href="a06062.html#l00188">NL3D::CMRMWedgeGeom::serial()</a>, <a class="el" href="a06012.html#l00338">NL3D::CMeshMRMSkinnedGeom::CVertexBlock::serial()</a>, <a class="el" href="a06012.html#l00314">NL3D::CMeshMRMSkinnedGeom::CRdrPass::serial()</a>, <a class="el" href="a06012.html#l00262">NL3D::CMeshMRMSkinnedGeom::CShadowVertex::serial()</a>, <a class="el" href="a06011.html#l01937">NL3D::CMeshMRMSkinnedGeom::CPackedVertexBuffer::CPackedVertex::serial()</a>, <a class="el" href="a06011.html#l01926">NL3D::CMeshMRMSkinnedGeom::CPackedVertexBuffer::serial()</a>, <a class="el" href="a06011.html#l00991">NL3D::CMeshMRMSkinnedGeom::serial()</a>, <a class="el" href="a06006.html#l00463">NL3D::CMeshMRMGeom::CLodInfo::serial()</a>, <a class="el" href="a06006.html#l00368">NL3D::CMeshMRMGeom::CVertexBlock::serial()</a>, <a class="el" href="a06006.html#l00350">NL3D::CMeshMRMGeom::CRdrPass::serial()</a>, <a class="el" href="a06006.html#l00296">NL3D::CMeshMRMGeom::CShadowVertex::serial()</a>, <a class="el" href="a05992.html#l00103">NL3D::CMeshBase::CLightMapInfoList::serial()</a>, <a class="el" href="a05992.html#l00092">NL3D::CMeshBase::CLightMapInfoList::CMatStage::serial()</a>, <a class="el" href="a05992.html#l00063">NL3D::CMeshBase::CMatStageV7::serial()</a>, <a class="el" href="a05990.html#l00518">NL3D::CMeshGeom::CMatrixBlock::serial()</a>, <a class="el" href="a05990.html#l00497">NL3D::CMeshGeom::CRdrPass::serial()</a>, <a class="el" href="a05972.html#l01500">NLMISC::CMatrix::serial()</a>, <a class="el" href="a05969.html#l00542">NL3D::CMaterial::CTexEnv::serial()</a>, <a class="el" href="a05968.html#l00438">NL3D::CMaterial::CLightMap::serial()</a>, <a class="el" href="a05968.html#l00139">NL3D::CMaterial::serial()</a>, <a class="el" href="a05942.html#l00065">NL3D::CLodCharacterTexture::CTUVQ::serial()</a>, <a class="el" href="a05941.html#l00043">NL3D::CLodCharacterTexture::serial()</a>, <a class="el" href="a05938.html#l00256">NL3D::CLodCharacterShape::CVertexInf::serial()</a>, <a class="el" href="a05938.html#l00153">NL3D::CLodCharacterShape::CVector3s::serial()</a>, <a class="el" href="a05938.html#l00067">NL3D::CLodCharacterShapeBuild::CPixelInfo::serial()</a>, <a class="el" href="a05937.html#l00505">NL3D::CLodCharacterShape::serial()</a>, <a class="el" href="a05937.html#l00495">NL3D::CLodCharacterShape::CBoneInfluence::serial()</a>, <a class="el" href="a05937.html#l00481">NL3D::CLodCharacterShape::CAnim::serial()</a>, <a class="el" href="a05937.html#l00273">NL3D::CLodCharacterShapeBuild::serial()</a>, <a class="el" href="a05930.html#l00179">NLPACS::CLocalRetriever::CInteriorFace::serial()</a>, <a class="el" href="a05930.html#l00106">NLPACS::CLocalRetriever::CTip::serial()</a>, <a class="el" href="a05930.html#l00093">NLPACS::CLocalRetriever::CTip::CChainTip::serial()</a>, <a class="el" href="a05929.html#l00895">NLPACS::CLocalRetriever::serial()</a>, <a class="el" href="a05807.html#l00056">NL3D::CIGSurfaceLight::CRetrieverLightGrid::serial()</a>, <a class="el" href="a05806.html#l00098">NL3D::CIGSurfaceLight::serial()</a>, <a class="el" href="a05792.html#l00154">NL3D::CHLSTextureBank::CTextureInstance::serial()</a>, <a class="el" href="a05790.html#l00313">NL3D::CHLSColorTexture::serial()</a>, <a class="el" href="a05790.html#l00057">NL3D::CHLSColorTexture::CMask::serial()</a>, <a class="el" href="a05790.html#l00049">NL3D::CHLSColorDelta::serial()</a>, <a class="el" href="a05761.html#l00136">NLPACS::CGlobalRetriever::serial()</a>, <a class="el" href="a05694.html#l00170">NLPACS::CFaceGrid::serial()</a>, <a class="el" href="a05693.html#l00086">NLPACS::CExteriorMesh::CLink::serial()</a>, <a class="el" href="a05693.html#l00075">NLPACS::CExteriorMesh::COrderedEdges::serial()</a>, <a class="el" href="a05693.html#l00067">NLPACS::CExteriorMesh::CEdge::serial()</a>, <a class="el" href="a05692.html#l00098">NLPACS::CExteriorMesh::serial()</a>, <a class="el" href="a05666.html#l00571">NLPACS::CEdgeQuad::serial()</a>, <a class="el" href="a05585.html#l00164">NLMISC::CSerialCommand::serial()</a>, <a class="el" href="a05583.html#l00149">NLPACS::CExteriorEdgeEntry::serial()</a>, <a class="el" href="a05579.html#l00087">NLPACS::CCollisionFace::serial()</a>, <a class="el" href="a05578.html#l00088">NLPACS::CSurfaceIdent::serial()</a>, <a class="el" href="a05563.html#l00250">NL3D::CCluster::serial()</a>, <a class="el" href="a05541.html#l00473">NLPACS::CChainQuad::serial()</a>, <a class="el" href="a05539.html#l00274">NLPACS::CChain::serial()</a>, <a class="el" href="a05539.html#l00158">NLPACS::COrderedChain::serial()</a>, <a class="el" href="a05539.html#l00064">NLPACS::COrderedChain3f::serial()</a>, <a class="el" href="a05491.html#l00056">NL3D::CBoneBase::serial()</a>, <a class="el" href="a05484.html#l00294">NLMISC::CBitSet::serial()</a>, <a class="el" href="a05468.html#l00115">CAutomataDesc::CState::serial()</a>, <a class="el" href="a05447.html#l00292">NL3D::CAnimationPlaylist::serial()</a>, <a class="el" href="a05443.html#l00080">NL3D::CAnimation::serial()</a>, <a class="el" href="a05439.html#l00047">NL3D::CMorphBase::serial()</a>, <a class="el" href="a05438.html#l00103">NL3D::CMaterialBase::CTexAnimTracks::serial()</a>, <a class="el" href="a05437.html#l00080">NL3D::CMaterialBase::serial()</a>, <a class="el" href="a05384.html#l00206">NLMISC::CAABBox::serial()</a>, <a class="el" href="a05968.html#l00456">NL3D::CMaterial::CLightMap::serial2()</a>, <a class="el" href="a06463.html#l00332">serialBitField16()</a>, <a class="el" href="a06463.html#l00338">serialBitField32()</a>, <a class="el" href="a06463.html#l00326">serialBitField8()</a>, <a class="el" href="a06462.html#l00877">serialBufferWithSize()</a>, <a class="el" href="a06462.html#l00520">serialCheck()</a>, <a class="el" href="a06560.html#l00090">NL3D::CTrackSampledCommon::serialCommon()</a>, <a class="el" href="a06461.html#l00318">serialCont()</a>, <a class="el" href="a06462.html#l00261">serialEnum()</a>, <a class="el" href="a06710.html#l00883">NL3D::CVertexBuffer::serialHeader()</a>, <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, <a class="el" href="a06005.html#l01918">NL3D::CMeshMRMGeom::serialLodVertexData()</a>, <a class="el" href="a06462.html#l01360">serialMap()</a>, <a class="el" href="a06461.html#l00436">serialMemStream()</a>, <a class="el" href="a06462.html#l01271">serialMultimap()</a>, <a class="el" href="a06710.html#l00741">NL3D::CVertexBuffer::serialOldV1Minus()</a>, <a class="el" href="a06462.html#l00390">serialPtr()</a>, <a class="el" href="a06462.html#l00955">serialSTLCont()</a>, <a class="el" href="a06462.html#l00905">serialSTLContLen()</a>, <a class="el" href="a06462.html#l01192">serialSTLContPolyPtr()</a>, <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>, <a class="el" href="a06462.html#l00992">serialVector()</a>, <a class="el" href="a06462.html#l01215">serialVectorPolyPtr()</a>, <a class="el" href="a06462.html#l01121">serialVectorPtr()</a>, <a class="el" href="a06461.html#l00266">serialVersion()</a>, <a class="el" href="a05486.html#l02139">NLMISC::CBitmap::writeTGA()</a>, and <a class="el" href="a06462.html#l00647">xmlSerial()</a>.
+<p>
+<div class="fragment"><pre>00232 { obj.serial(*<span class="keyword">this</span>); }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2041_0" doxytag="NLMISC::IStream::serialBit" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NLMISC::IStream::serialBit </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>bit</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [pure virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Implemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama23">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama21">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama39">NLMISC::CBitMemStream</a>, <a class="el" href="a02653.html#NLMISC_1_1CIFilez1942_5">NLMISC::CIFile</a>, <a class="el" href="a03011.html#NLMISC_1_1COFileb1">NLMISC::COFile</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea42">NLMISC::CMemStream</a>, <a class="el" href="a03032.html#NLMISC_1_1COXmld15">NLMISC::COXml</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama29">NLMISC::CStringStream</a>.
+<p>
+Referenced by <a class="el" href="a06463.html#l00263">serial()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2030_0" doxytag="NLMISC::IStream::serialBitField16" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a9">uint16</a> NLMISC::IStream::serialBitField16 </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a9">uint16</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>bf</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialisation of bitfield &lt;=16 bits.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06463.html#l00332">332</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>, and <a class="el" href="a05981.html#l00098">uint16</a>.
+<p>
+<div class="fragment"><pre>00333 {
+00334 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(bf);
+00335 <span class="keywordflow">return</span> bf;
+00336 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2030_1" doxytag="NLMISC::IStream::serialBitField32" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> NLMISC::IStream::serialBitField32 </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>bf</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialisation of bitfield &lt;=32 bits.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06463.html#l00338">338</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>, and <a class="el" href="a05981.html#l00100">uint32</a>.
+<p>
+<div class="fragment"><pre>00339 {
+00340 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(bf);
+00341 <span class="keywordflow">return</span> bf;
+00342 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2030_2" doxytag="NLMISC::IStream::serialBitField8" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a7">uint8</a> NLMISC::IStream::serialBitField8 </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a7">uint8</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>bf</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialisation of bitfield &lt;=8 bits.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06463.html#l00326">326</a> of file <a class="el" href="a06463.html">stream_inline.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+Referenced by <a class="el" href="a05969.html#l00542">NL3D::CMaterial::CTexEnv::serial()</a>.
+<p>
+<div class="fragment"><pre>00327 {
+00328 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(bf);
+00329 <span class="keywordflow">return</span> bf;
+00330 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2041_1" doxytag="NLMISC::IStream::serialBuffer" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NLMISC::IStream::serialBuffer </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a7">uint8</a> *&nbsp;</td>
+ <td class="mdname" nowrap> <em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>len</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [pure virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Method to be specified by the Deriver. <dl compact><dt><b>Warning:</b></dt><dd>Do not call these methods from outside, unless you really know what you are doing. Using them instead of <a class="el" href="a02270.html#NLMISC_1_1IStreama5">serial()</a> can lead to communication problems between different platforms !</dd></dl>
+
+<p>
+Implemented in <a class="el" href="a02973.html#NLAIAGENT_1_1CMsgIStreama24">NLAIAGENT::CMsgIStream</a>, <a class="el" href="a02975.html#NLAIAGENT_1_1CMsgOStreama22">NLAIAGENT::CMsgOStream</a>, <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama40">NLMISC::CBitMemStream</a>, <a class="el" href="a02653.html#NLMISC_1_1CIFilea15">NLMISC::CIFile</a>, <a class="el" href="a03011.html#NLMISC_1_1COFilea12">NLMISC::COFile</a>, <a class="el" href="a02271.html#NLMISC_1_1CStringStreama30">NLMISC::CMemStream</a>, and <a class="el" href="a03032.html#NLMISC_1_1COXmld16">NLMISC::COXml</a>.
+<p>
+Referenced by <a class="el" href="a05486.html#l00244">NLMISC::CBitmap::readDDS()</a>, <a class="el" href="a05486.html#l01800">NLMISC::CBitmap::readTGA()</a>, <a class="el" href="a06548.html#l00036">NL3D::CTileNoiseMap::serial()</a>, <a class="el" href="a06463.html#l00075">serial()</a>, <a class="el" href="a06462.html#l00877">serialBufferWithSize()</a>, <a class="el" href="a06461.html#l00318">serialCont()</a>, <a class="el" href="a06461.html#l00436">serialMemStream()</a>, <a class="el" href="a06710.html#l01008">NL3D::CVertexBuffer::serialSubset()</a>, and <a class="el" href="a06107.html#l00648">NLMISC::xmlOutputWriteCallbackForNeL()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreama6" doxytag="NLMISC::IStream::serialBufferWithSize" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual void NLMISC::IStream::serialBufferWithSize </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a7">uint8</a> *&nbsp;</td>
+ <td class="mdname" nowrap> <em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a11">uint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>len</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+This method first serializes the size of the buffer and after the buffer itself, it enables the possibility to serial with a <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> on the other side.
+<p>
+Definition at line <a class="el" href="a06462.html#l00877">877</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+<div class="fragment"><pre>00878 {
+00879 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (len);
+00880 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a> (buf, len);
+00881 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2035_0" doxytag="NLMISC::IStream::serialCheck" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCheck </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>value</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialize a check value. An object can stream a check value to check integrity or format of filed or streamed data. Just call serial check with a const value. Write will serial the value. Read will check the value is the same. If it is not, it will throw <a class="el" href="a03794.html">EInvalidDataStream</a> exception.<p>
+NB: The type of the value must implement an operator == and must be serializable. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>value</em>&nbsp;</td><td>the value used to the check. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a03794.html">EInvalidDataStream</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00520">520</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05646.html#l01132">value</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, and <a class="el" href="a06462.html#l00701">xmlPush()</a>.
+<p>
+Referenced by <a class="el" href="a06138.html#l00495">NLNET::cbPacsAnswer()</a>, <a class="el" href="a06138.html#l00085">NLNET::CPacsClient::initMessage()</a>, <a class="el" href="a05926.html#l00145">loadForm()</a>, <a class="el" href="a06772.html#l00159">NLLIGO::CZoneRegion::serial()</a>, <a class="el" href="a06762.html#l00105">NLLIGO::CZoneBankElement::serial()</a>, <a class="el" href="a06758.html#l00432">NL3D::CZone::serial()</a>, <a class="el" href="a06702.html#l00186">NL3D::CVegetableShape::serial()</a>, <a class="el" href="a06399.html#l00069">NL3D::CSkeletonWeight::serial()</a>, <a class="el" href="a06350.html#l00379">NL3D::CInstanceGroup::serial()</a>, <a class="el" href="a05937.html#l00505">NL3D::CLodCharacterShape::serial()</a>, <a class="el" href="a05937.html#l00273">NL3D::CLodCharacterShapeBuild::serial()</a>, <a class="el" href="a05449.html#l00134">NL3D::CAnimationSet::serial()</a>, and <a class="el" href="a05443.html#l00080">NL3D::CAnimation::serial()</a>.
+<p>
+<div class="fragment"><pre>00521 {
+00522 <span class="comment">// Open a node</span>
+00523 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"CHECK"</span>);
+00524
+00525 <span class="keywordflow">if</span> (<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00526 {
+00527 T read;
+00528 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (read);
+00529 <span class="keywordflow">if</span> (read!=<a class="code" href="a04223.html#a658">value</a>)
+00530 <span class="keywordflow">throw</span> EInvalidDataStream(*<span class="keyword">this</span>);
+00531 }
+00532 <span class="keywordflow">else</span>
+00533 {
+00534 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (const_cast&lt;T&amp;&gt;(value));
+00535 }
+00536
+00537 <span class="comment">// Close the node </span>
+00538 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00539 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_0" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; bool &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama42">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea45">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama32">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06461.html#l00356">356</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+<div class="fragment"><pre>00357 {
+00358 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+00359 vector&lt;uint8&gt; vec;
+00360
+00361 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00362 {
+00363 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00364 cont.resize(len);
+00365
+00366 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a571">len</a> != 0)
+00367 {
+00368 <span class="comment">// read as uint8*.</span>
+00369 <a class="code" href="a04558.html#a14">sint</a> lb= (<a class="code" href="a04223.html#a571">len</a>+7)/8;
+00370 vec.resize(lb);
+00371 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>( (<a class="code" href="a04558.html#a7">uint8</a>*)&amp;(*vec.begin()) , lb);
+00372 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+00373 {
+00374 <a class="code" href="a04558.html#a15">uint</a> bit= (vec[i&gt;&gt;3]&gt;&gt;(i&amp;7)) &amp; 1;
+00375 cont[i]= bit?<span class="keyword">true</span>:<span class="keyword">false</span>;
+00376 }
+00377 }
+00378 }
+00379 <span class="keywordflow">else</span>
+00380 {
+00381 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+00382 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00383
+00384 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a571">len</a> != 0)
+00385 {
+00386 <span class="comment">// write as uint8*.</span>
+00387 <a class="code" href="a04558.html#a14">sint</a> lb= (<a class="code" href="a04223.html#a571">len</a>+7)/8;
+00388 vec.resize(lb);
+00389 fill_n(vec.begin(), lb, 0);
+00390 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+00391 {
+00392 <a class="code" href="a04558.html#a15">uint</a> bit= cont[i]?1:0;
+00393 vec[i&gt;&gt;3]|= bit&lt;&lt;(i&amp;7);
+00394 }
+00395 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>( (<a class="code" href="a04558.html#a7">uint8</a>*)&amp;(*vec.begin()) , lb);
+00396 }
+00397 }
+00398
+00399 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_1" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; <a class="el" href="a04558.html#a6">sint8</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;sint8&gt;.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama43">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea46">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama33">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06461.html#l00337">337</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+<div class="fragment"><pre>00338 {
+00339 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+00340 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00341 {
+00342 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00343 cont.resize(len);
+00344 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a571">len</a> != 0)
+00345 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>( (<a class="code" href="a04558.html#a7">uint8</a>*)&amp;(*cont.begin()) , <a class="code" href="a04223.html#a571">len</a>);
+00346 }
+00347 <span class="keywordflow">else</span>
+00348 {
+00349 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+00350 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00351 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a571">len</a> != 0)
+00352 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>( (<a class="code" href="a04558.html#a7">uint8</a>*)&amp;(*cont.begin()) , <a class="code" href="a04223.html#a571">len</a>);
+00353 }
+00354 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_2" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; <a class="el" href="a04558.html#a7">uint8</a> &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;uint8&gt;.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama44">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea47">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama34">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06461.html#l00318">318</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+<div class="fragment"><pre>00319 {
+00320 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+00321 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00322 {
+00323 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00324 cont.resize(len);
+00325 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a571">len</a> != 0)
+00326 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>( (<a class="code" href="a04558.html#a7">uint8</a>*)&amp;(*cont.begin()) , <a class="code" href="a04223.html#a571">len</a>);
+00327 }
+00328 <span class="keywordflow">else</span>
+00329 {
+00330 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+00331 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00332 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a571">len</a> != 0)
+00333 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>( (<a class="code" href="a04558.html#a7">uint8</a>*)&amp;(*cont.begin()) , <a class="code" href="a04223.html#a571">len</a>);
+00334 }
+00335 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_3" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class K, class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::multimap&lt; K, T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama45">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea48">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama35">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00336">336</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01271">serialMultimap()</a>.
+<p>
+<div class="fragment"><pre>00336 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd2">serialMultimap</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_4" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class K, class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::map&lt; K, T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama46">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea49">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama36">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00334">334</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01360">serialMap()</a>.
+<p>
+<div class="fragment"><pre>00334 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd1">serialMap</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_5" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::multiset&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama47">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea50">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama37">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00332">332</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00955">serialSTLCont()</a>.
+<p>
+<div class="fragment"><pre>00332 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd3">serialSTLCont</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_6" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::set&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama48">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea51">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama38">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00330">330</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00955">serialSTLCont()</a>.
+<p>
+<div class="fragment"><pre>00330 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd3">serialSTLCont</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_7" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::deque&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama49">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea52">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama39">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00328">328</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00955">serialSTLCont()</a>.
+<p>
+<div class="fragment"><pre>00328 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd3">serialSTLCont</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_8" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::list&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;.
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a02269.html#NLMISC_1_1CBitMemStreama50">NLMISC::CBitMemStream</a>, <a class="el" href="a02271.html#NLNET_1_1CMessagea53">NLMISC::CMemStream</a>, and <a class="el" href="a03452.html#NLMISC_1_1CStringStreama40">NLMISC::CStringStream</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00326">326</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00955">serialSTLCont()</a>.
+<p>
+<div class="fragment"><pre>00326 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd3">serialSTLCont</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2033_9" doxytag="NLMISC::IStream::serialCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T, class Allocator&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; T, Allocator &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Specialisation of <a class="el" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont()</a> for vector&lt;bool&gt;.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00324">324</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00992">serialVector()</a>.
+<p>
+Referenced by <a class="el" href="a06005.html#l00055">NL3D::H_AUTO_DECL()</a>, <a class="el" href="a06127.html#l00304">NLAISCRIPT::CLdbHeapMemberiOpCode::load()</a>, <a class="el" href="a06127.html#l00245">NLAISCRIPT::CLdbStackMemberiOpCode::load()</a>, <a class="el" href="a06127.html#l00188">NLAISCRIPT::CLdbMemberiOpCode::load()</a>, <a class="el" href="a06125.html#l00437">NLAISCRIPT::CCallMethodi::load()</a>, <a class="el" href="a06125.html#l00315">NLAISCRIPT::CCallStackMethodi::load()</a>, <a class="el" href="a06125.html#l00242">NLAISCRIPT::CCallHeapMethodi::load()</a>, <a class="el" href="a06123.html#l00439">NLAISCRIPT::CLibStackMemberMethod::load()</a>, <a class="el" href="a06123.html#l00370">NLAISCRIPT::CLibCallMethodi::load()</a>, <a class="el" href="a06123.html#l00184">NLAISCRIPT::CLibMemberMethodi::load()</a>, <a class="el" href="a06121.html#l01165">NLAISCRIPT::CAffMemberiOpCode::load()</a>, <a class="el" href="a06121.html#l01099">NLAISCRIPT::CAffHeapMemberiOpCode::load()</a>, <a class="el" href="a06112.html#l00217">NLAISCRIPT::CLoadHeapObject::load()</a>, <a class="el" href="a06112.html#l00166">NLAISCRIPT::CLoadStackObject::load()</a>, <a class="el" href="a06112.html#l00117">NLAISCRIPT::CLoadSelfObject::load()</a>, <a class="el" href="a05668.html#l00405">NLMISC::CEntityIdTranslator::load()</a>, <a class="el" href="a05471.html#l00618">NLSOUND::CBackgroundSoundManager::load()</a>, <a class="el" href="a05926.html#l00145">loadForm()</a>, <a class="el" href="a06127.html#l00296">NLAISCRIPT::CLdbHeapMemberiOpCode::save()</a>, <a class="el" href="a06127.html#l00239">NLAISCRIPT::CLdbStackMemberiOpCode::save()</a>, <a class="el" href="a06127.html#l00182">NLAISCRIPT::CLdbMemberiOpCode::save()</a>, <a class="el" href="a06125.html#l00427">NLAISCRIPT::CCallMethodi::save()</a>, <a class="el" href="a06125.html#l00305">NLAISCRIPT::CCallStackMethodi::save()</a>, <a class="el" href="a06125.html#l00230">NLAISCRIPT::CCallHeapMethodi::save()</a>, <a class="el" href="a06123.html#l00429">NLAISCRIPT::CLibStackMemberMethod::save()</a>, <a class="el" href="a06123.html#l00358">NLAISCRIPT::CLibCallMethodi::save()</a>, <a class="el" href="a06123.html#l00174">NLAISCRIPT::CLibMemberMethodi::save()</a>, <a class="el" href="a06121.html#l01159">NLAISCRIPT::CAffMemberiOpCode::save()</a>, <a class="el" href="a06121.html#l01091">NLAISCRIPT::CAffHeapMemberiOpCode::save()</a>, <a class="el" href="a06112.html#l00210">NLAISCRIPT::CLoadHeapObject::save()</a>, <a class="el" href="a06112.html#l00161">NLAISCRIPT::CLoadStackObject::save()</a>, <a class="el" href="a06112.html#l00112">NLAISCRIPT::CLoadSelfObject::save()</a>, <a class="el" href="a05668.html#l00442">NLMISC::CEntityIdTranslator::save()</a>, <a class="el" href="a06772.html#l00159">NLLIGO::CZoneRegion::serial()</a>, <a class="el" href="a06762.html#l00105">NLLIGO::CZoneBankElement::serial()</a>, <a class="el" href="a06758.html#l00432">NL3D::CZone::serial()</a>, <a class="el" href="a06702.html#l00186">NL3D::CVegetableShape::serial()</a>, <a class="el" href="a06550.html#l00099">NL3D::CTileVegetableDesc::serial()</a>, <a class="el" href="a06399.html#l00069">NL3D::CSkeletonWeight::serial()</a>, <a class="el" href="a06350.html#l00379">NL3D::CInstanceGroup::serial()</a>, <a class="el" href="a06350.html#l00065">NL3D::CInstanceGroup::CInstance::serial()</a>, <a class="el" href="a06337.html#l00736">NLPACS::CRetrieverInstance::serial()</a>, <a class="el" href="a06336.html#l00114">NLPACS::CRetrieverBank::serial()</a>, <a class="el" href="a06333.html#l00097">NLPACS::CRetrievableSurface::TLoop::serial()</a>, <a class="el" href="a06333.html#l00051">NLPACS::CRetrievableSurface::serial()</a>, <a class="el" href="a06197.html#l00219">NL3D::CPrimitiveBlock::serial()</a>, <a class="el" href="a06193.html#l00216">NL3D::CPortal::serial()</a>, <a class="el" href="a06186.html#l00164">NL3D::CPointLightNamedArray::serial()</a>, <a class="el" href="a06155.html#l01576">NL3D::CPatch::serial()</a>, <a class="el" href="a06105.html#l00337">NLMISC::CNoiseColorGradient::serial()</a>, <a class="el" href="a06012.html#l00314">NL3D::CMeshMRMSkinnedGeom::CRdrPass::serial()</a>, <a class="el" href="a06011.html#l01926">NL3D::CMeshMRMSkinnedGeom::CPackedVertexBuffer::serial()</a>, <a class="el" href="a06011.html#l00991">NL3D::CMeshMRMSkinnedGeom::serial()</a>, <a class="el" href="a05992.html#l00103">NL3D::CMeshBase::CLightMapInfoList::serial()</a>, <a class="el" href="a05992.html#l00071">NL3D::CMeshBase::CLightInfoMapListV7::serial()</a>, <a class="el" href="a05990.html#l00518">NL3D::CMeshGeom::CMatrixBlock::serial()</a>, <a class="el" href="a05968.html#l00139">NL3D::CMaterial::serial()</a>, <a class="el" href="a05941.html#l00043">NL3D::CLodCharacterTexture::serial()</a>, <a class="el" href="a05939.html#l00121">NL3D::CLodCharacterShapeBank::serial()</a>, <a class="el" href="a05937.html#l00505">NL3D::CLodCharacterShape::serial()</a>, <a class="el" href="a05937.html#l00495">NL3D::CLodCharacterShape::CBoneInfluence::serial()</a>, <a class="el" href="a05937.html#l00481">NL3D::CLodCharacterShape::CAnim::serial()</a>, <a class="el" href="a05937.html#l00273">NL3D::CLodCharacterShapeBuild::serial()</a>, <a class="el" href="a05930.html#l00129">NLPACS::CLocalRetriever::CTopology::serial()</a>, <a class="el" href="a05930.html#l00106">NLPACS::CLocalRetriever::CTip::serial()</a>, <a class="el" href="a05929.html#l00895">NLPACS::CLocalRetriever::serial()</a>, <a class="el" href="a05806.html#l00098">NL3D::CIGSurfaceLight::serial()</a>, <a class="el" href="a05792.html#l00117">NL3D::CHLSTextureBank::serial()</a>, <a class="el" href="a05790.html#l00313">NL3D::CHLSColorTexture::serial()</a>, <a class="el" href="a05790.html#l00057">NL3D::CHLSColorTexture::CMask::serial()</a>, <a class="el" href="a05761.html#l00136">NLPACS::CGlobalRetriever::serial()</a>, <a class="el" href="a05694.html#l00170">NLPACS::CFaceGrid::serial()</a>, <a class="el" href="a05692.html#l00098">NLPACS::CExteriorMesh::serial()</a>, <a class="el" href="a05666.html#l00571">NLPACS::CEdgeQuad::serial()</a>, <a class="el" href="a05579.html#l00149">NLPACS::CCollisionMeshBuild::serial()</a>, <a class="el" href="a05563.html#l00250">NL3D::CCluster::serial()</a>, <a class="el" href="a05539.html#l00274">NLPACS::CChain::serial()</a>, <a class="el" href="a05539.html#l00158">NLPACS::COrderedChain::serial()</a>, <a class="el" href="a05539.html#l00064">NLPACS::COrderedChain3f::serial()</a>, <a class="el" href="a05484.html#l00294">NLMISC::CBitSet::serial()</a>, <a class="el" href="a05468.html#l00115">CAutomataDesc::CState::serial()</a>, <a class="el" href="a05449.html#l00134">NL3D::CAnimationSet::serial()</a>, <a class="el" href="a05443.html#l00080">NL3D::CAnimation::serial()</a>, <a class="el" href="a05437.html#l00080">NL3D::CMaterialBase::serial()</a>, and <a class="el" href="a05584.html#l00374">NLMISC::ICommand::serialCommands()</a>.
+<p>
+<div class="fragment"><pre>00324 {<a class="code" href="a02270.html#NLMISC_1_1IStreamb0">serialVector</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2035_1" doxytag="NLMISC::IStream::serialContPolyPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPolyPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::multiset&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialize a check value. An object can stream a check value to check integrity or format of filed or streamed data. Just call serial check with a const value. Write will serial the value. Read will check the value is the same. If it is not, it will throw <a class="el" href="a03794.html">EInvalidDataStream</a> exception.<p>
+NB: The type of the value must implement an operator == and must be serializable. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>value</em>&nbsp;</td><td>the value used to the check. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a03794.html">EInvalidDataStream</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00379">379</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01192">serialSTLContPolyPtr()</a>.
+<p>
+<div class="fragment"><pre>00379 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd7">serialSTLContPolyPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2035_2" doxytag="NLMISC::IStream::serialContPolyPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPolyPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::set&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialize a check value. An object can stream a check value to check integrity or format of filed or streamed data. Just call serial check with a const value. Write will serial the value. Read will check the value is the same. If it is not, it will throw <a class="el" href="a03794.html">EInvalidDataStream</a> exception.<p>
+NB: The type of the value must implement an operator == and must be serializable. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>value</em>&nbsp;</td><td>the value used to the check. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a03794.html">EInvalidDataStream</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00377">377</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01192">serialSTLContPolyPtr()</a>.
+<p>
+<div class="fragment"><pre>00377 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd7">serialSTLContPolyPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2035_3" doxytag="NLMISC::IStream::serialContPolyPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPolyPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::deque&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialize a check value. An object can stream a check value to check integrity or format of filed or streamed data. Just call serial check with a const value. Write will serial the value. Read will check the value is the same. If it is not, it will throw <a class="el" href="a03794.html">EInvalidDataStream</a> exception.<p>
+NB: The type of the value must implement an operator == and must be serializable. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>value</em>&nbsp;</td><td>the value used to the check. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a03794.html">EInvalidDataStream</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00375">375</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01192">serialSTLContPolyPtr()</a>.
+<p>
+<div class="fragment"><pre>00375 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd7">serialSTLContPolyPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2035_4" doxytag="NLMISC::IStream::serialContPolyPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPolyPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::list&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialize a check value. An object can stream a check value to check integrity or format of filed or streamed data. Just call serial check with a const value. Write will serial the value. Read will check the value is the same. If it is not, it will throw <a class="el" href="a03794.html">EInvalidDataStream</a> exception.<p>
+NB: The type of the value must implement an operator == and must be serializable. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>value</em>&nbsp;</td><td>the value used to the check. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a03794.html">EInvalidDataStream</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00373">373</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01192">serialSTLContPolyPtr()</a>.
+<p>
+<div class="fragment"><pre>00373 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd7">serialSTLContPolyPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2035_5" doxytag="NLMISC::IStream::serialContPolyPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T, class Allocator&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPolyPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; T, Allocator &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialize a check value. An object can stream a check value to check integrity or format of filed or streamed data. Just call serial check with a const value. Write will serial the value. Read will check the value is the same. If it is not, it will throw <a class="el" href="a03794.html">EInvalidDataStream</a> exception.<p>
+NB: The type of the value must implement an operator == and must be serializable. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>value</em>&nbsp;</td><td>the value used to the check. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a03794.html">EInvalidDataStream</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00371">371</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01215">serialVectorPolyPtr()</a>.
+<p>
+Referenced by <a class="el" href="a05443.html#l00080">NL3D::CAnimation::serial()</a>.
+<p>
+<div class="fragment"><pre>00371 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd9">serialVectorPolyPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2034_0" doxytag="NLMISC::IStream::serialContPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::multiset&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00362">362</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>.
+<p>
+<div class="fragment"><pre>00362 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd8">serialSTLContPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2034_1" doxytag="NLMISC::IStream::serialContPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::set&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00360">360</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>.
+<p>
+<div class="fragment"><pre>00360 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd8">serialSTLContPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2034_2" doxytag="NLMISC::IStream::serialContPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::deque&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00358">358</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>.
+<p>
+<div class="fragment"><pre>00358 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd8">serialSTLContPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2034_3" doxytag="NLMISC::IStream::serialContPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::list&lt; T &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00356">356</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>.
+<p>
+<div class="fragment"><pre>00356 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd8">serialSTLContPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2034_4" doxytag="NLMISC::IStream::serialContPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T, class Allocator&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialContPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">std::vector&lt; T, Allocator &gt; &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00354">354</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01121">serialVectorPtr()</a>.
+<p>
+Referenced by <a class="el" href="a05449.html#l00134">NL3D::CAnimationSet::serial()</a>.
+<p>
+<div class="fragment"><pre>00354 {<a class="code" href="a02270.html#NLMISC_1_1IStreamd10">serialVectorPtr</a>(cont);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreama7" doxytag="NLMISC::IStream::serialEnum" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialEnum </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>em</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Template enum serialisation. Serialized as a sint32.
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00261">261</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00232">serial()</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+Referenced by <a class="el" href="a06580.html#l00279">NLNET::cbTCReceiveOtherSideClass()</a>, <a class="el" href="a06702.html#l00186">NL3D::CVegetableShape::serial()</a>, <a class="el" href="a06686.html#l00375">NL3D::CVegetable::serial()</a>, <a class="el" href="a06337.html#l00736">NLPACS::CRetrieverInstance::serial()</a>, <a class="el" href="a06179.html#l00230">NL3D::CPointLight::serial()</a>, <a class="el" href="a05968.html#l00139">NL3D::CMaterial::serial()</a>, <a class="el" href="a05929.html#l00895">NLPACS::CLocalRetriever::serial()</a>, <a class="el" href="a05585.html#l00164">NLMISC::CSerialCommand::serial()</a>, and <a class="el" href="a05447.html#l00292">NL3D::CAnimationPlaylist::serial()</a>.
+<p>
+<div class="fragment"><pre>00262 {
+00263 <a class="code" href="a04558.html#a10">sint32</a> i;
+00264 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00265 {
+00266 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(i);
+00267 em = (T)i;
+00268 }
+00269 <span class="keywordflow">else</span>
+00270 {
+00271 i = em;
+00272 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(i);
+00273 }
+00274 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd0" doxytag="NLMISC::IStream::serialIStreamable" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialIStreamable </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02867.html">IStreamable</a> *&amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>ptr</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06461.html#l00115">115</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06462.html#l00890">_IdMap</a>, <a class="el" href="a06462.html#l00889">_NextSerialPtrId</a>, <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00891">ItIdMap</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00102">uint64</a>, <a class="el" href="a06462.html#l00892">ValueIdMap</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00492">serialPolyPtr()</a>.
+<p>
+<div class="fragment"><pre>00116 {
+00117 <a class="code" href="a04558.html#a13">uint64</a> node=0;
+00118
+00119 <span class="comment">// Open a node</span>
+00120 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin</a> (<span class="stringliteral">"POLYPTR"</span>);
+00121
+00122 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00123 {
+00124 <span class="comment">// First attribute name</span>
+00125 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"id"</span>);
+00126
+00127 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(node);
+00128
+00129 <span class="keywordflow">if</span>(node==0)
+00130 {
+00131 ptr=NULL;
+00132
+00133 <span class="comment">// Close the node header</span>
+00134 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00135 }
+00136 <span class="keywordflow">else</span>
+00137 {
+00138 <a class="code" href="a02270.html#NLMISC_1_1IStreamy0">ItIdMap</a> it;
+00139 it= <a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.find(node);
+00140
+00141 <span class="comment">// Test if object already created/read.</span>
+00142 <span class="keywordflow">if</span>( it==<a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.end() )
+00143 {
+00144 <span class="comment">// Read the class name.</span>
+00145 string className;
+00146
+00147 <span class="comment">// Second attribute name</span>
+00148 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"class"</span>);
+00149
+00150 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(className);
+00151
+00152 <span class="comment">// Close the node header</span>
+00153 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00154
+00155 <span class="comment">// Construct object.</span>
+00156 ptr= dynamic_cast&lt;IStreamable*&gt; (CClassRegistry::create(className));
+00157 <span class="keywordflow">if</span>(ptr==NULL)
+00158 <span class="preprocessor"> #ifdef NL_DEBUG</span>
+00159 <span class="preprocessor"></span> <span class="keywordflow">throw</span> EUnregisteredClass(className);
+00160 <span class="preprocessor"> #else</span>
+00161 <span class="preprocessor"></span> <span class="keywordflow">throw</span> EUnregisteredClass();
+00162 <span class="preprocessor"> #endif</span>
+00163 <span class="preprocessor"></span>
+00164
+00165 <span class="preprocessor"> #ifdef NL_DEBUG</span>
+00166 <span class="preprocessor"></span> <a class="code" href="a04199.html#a6">nlassert</a>(CClassRegistry::checkObject(ptr));
+00167 <span class="preprocessor"> #endif</span>
+00168 <span class="preprocessor"></span>
+00169 <span class="comment">// Insert the node.</span>
+00170 <a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.insert( <a class="code" href="a02270.html#NLMISC_1_1IStreamy1">ValueIdMap</a>(node, ptr) );
+00171
+00172 <span class="comment">// Read the object!</span>
+00173 ptr-&gt;serial(*<span class="keyword">this</span>);
+00174 }
+00175 <span class="keywordflow">else</span>
+00176 {
+00177 ptr= static_cast&lt;IStreamable*&gt;(it-&gt;second);
+00178
+00179 <span class="comment">// Close the node header</span>
+00180 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00181 }
+00182 }
+00183 }
+00184 <span class="keywordflow">else</span>
+00185 {
+00186 <span class="keywordflow">if</span>(ptr==NULL)
+00187 {
+00188 node= 0;
+00189
+00190 <span class="comment">// First attribute name</span>
+00191 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"id"</span>);
+00192
+00193 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(node);
+00194
+00195 <span class="comment">// Close the node header</span>
+00196 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00197 }
+00198 <span class="keywordflow">else</span>
+00199 {
+00200 <span class="comment">// Assume that prt size is an int size</span>
+00201 <a class="code" href="a04199.html#a6">nlassert</a>(<span class="keyword">sizeof</span>(<a class="code" href="a04558.html#a15">uint</a>) == <span class="keyword">sizeof</span>(<span class="keywordtype">void</span> *));
+00202
+00203 <a class="code" href="a02270.html#NLMISC_1_1IStreamy0">ItIdMap</a> it;
+00204 it = <a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.find((<a class="code" href="a04558.html#a13">uint64</a>)(uint)ptr);
+00205
+00206 <span class="comment">// Test if object has been already written</span>
+00207 <span class="keywordflow">if</span>( it==<a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.end() )
+00208 {
+00209 <span class="comment">// Not yet written</span>
+00210
+00211 <span class="comment">// Get the next available ID</span>
+00212 node = <a class="code" href="a02270.html#NLMISC_1_1IStreamr2">_NextSerialPtrId</a>++;
+00213
+00214 <span class="comment">// Serial the id</span>
+00215 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"id"</span>);
+00216 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(node);
+00217
+00218 <span class="comment">// Insert the pointer in the map with the id</span>
+00219 <a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.insert( <a class="code" href="a02270.html#NLMISC_1_1IStreamy1">ValueIdMap</a>((<a class="code" href="a04558.html#a13">uint64</a>)(uint)ptr, (<span class="keywordtype">void</span>*)(uint)node) );
+00220
+00221 <span class="preprocessor"> #ifdef NL_DEBUG</span>
+00222 <span class="preprocessor"></span> <a class="code" href="a04199.html#a6">nlassert</a>(CClassRegistry::checkObject(ptr));
+00223 <span class="preprocessor"> #endif</span>
+00224 <span class="preprocessor"></span>
+00225 <span class="comment">// Write the class name.</span>
+00226 string className=ptr-&gt;getClassName();
+00227
+00228 <span class="comment">// Second attribute name</span>
+00229 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"class"</span>);
+00230 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(className);
+00231
+00232 <span class="comment">// Close the node header</span>
+00233 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00234
+00235 <span class="comment">// Write the object!</span>
+00236 ptr-&gt;serial(*<span class="keyword">this</span>);
+00237 }
+00238 <span class="keywordflow">else</span>
+00239 {
+00240 <span class="comment">// Write only the object id</span>
+00241 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"id"</span>);
+00242 node = (<a class="code" href="a04558.html#a13">uint64</a>)(<a class="code" href="a04558.html#a15">uint</a>)(it-&gt;second);
+00243 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(node);
+00244 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00245 }
+00246 }
+00247 }
+00248
+00249 <span class="comment">// Close the node </span>
+00250 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00251 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd1" doxytag="NLMISC::IStream::serialMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialMap </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+STL map&lt;&gt; Support up to sint32 length containers.<p>
+the object T must provide: <ul>
+<li>typedef iterator; (providing operator++() and <a class="el" href="a05378.html#a334">operator*()</a>) </li>
+<li>typedef value_type; (must be a std::pair&lt;&gt;) </li>
+<li>typedef key_type; (must be the type of the key) </li>
+<li>void clear(); </li>
+<li>size_type size() const; </li>
+<li>iterator <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw0">begin()</a>; </li>
+<li>iterator <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw2">end()</a>; </li>
+<li>iterator insert(iterator it, const value_type&amp; x);</li>
+</ul>
+Known Supported containers: map&lt;&gt; <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>cont</em>&nbsp;</td><td>a STL map&lt;&gt; container.</td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l01360">1360</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00701">xmlPush()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00334">serialCont()</a>.
+<p>
+<div class="fragment"><pre>01361 {
+01362 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::value_type __value_type;
+01363 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::key_type __key_type;
+01364 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::iterator __iterator;
+01365
+01366 <span class="comment">// Open a node header</span>
+01367 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin</a> (<span class="stringliteral">"MAP"</span>);
+01368
+01369 <span class="comment">// Attrib size</span>
+01370 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"size"</span>);
+01371
+01372 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>;
+01373 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+01374 {
+01375 cont.clear();
+01376 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01377
+01378 <span class="comment">// Close the node header</span>
+01379 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+01380
+01381 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+01382 {
+01383 <span class="comment">/* __value_type v;</span>
+01384 <span class="comment"></span>
+01385 <span class="comment"> xmlPush ("KEY");</span>
+01386 <span class="comment"></span>
+01387 <span class="comment"> serial ( const_cast&lt;__key_type&amp;&gt;(v.first) );</span>
+01388 <span class="comment"></span>
+01389 <span class="comment"> xmlPop ();</span>
+01390 <span class="comment"></span>
+01391 <span class="comment"></span>
+01392 <span class="comment"> xmlPush ("ELM");</span>
+01393 <span class="comment"></span>
+01394 <span class="comment"> serial (v.second);</span>
+01395 <span class="comment"></span>
+01396 <span class="comment"> xmlPop ();</span>
+01397 <span class="comment"></span>
+01398 <span class="comment"> cont.insert(cont.end(), v);</span>
+01399 <span class="comment">*/</span>
+01400 <span class="comment">// MALKAV 05/07/02 : prevent a copy of the value, copy the key instead</span>
+01401 __key_type k;
+01402
+01403 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"KEY"</span>);
+01404 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> ( k );
+01405 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01406
+01407
+01408 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"ELM"</span>);
+01409 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (cont[k]);
+01410 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01411 }
+01412 }
+01413 <span class="keywordflow">else</span>
+01414 {
+01415 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+01416 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01417 __iterator it= cont.begin();
+01418
+01419 <span class="comment">// Close the node header</span>
+01420 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+01421
+01422 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++, it++)
+01423 {
+01424 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"KEY"</span>);
+01425
+01426 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>( const_cast&lt;__key_type&amp;&gt;((*it).first) );
+01427
+01428 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01429
+01430 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"ELM"</span>);
+01431
+01432 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>((*it).second);
+01433
+01434 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01435 }
+01436 }
+01437
+01438 <span class="comment">// Close the node</span>
+01439 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01440 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreama8" doxytag="NLMISC::IStream::serialMemStream" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialMemStream </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a02271.html">CMemStream</a> &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>b</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serial memstream, bitmemstream...
+<p>
+
+<p>
+Definition at line <a class="el" href="a06461.html#l00436">436</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a05979.html#l00238">NLMISC::CMemStream::buffer()</a>, <a class="el" href="a05979.html#l00306">NLMISC::CMemStream::bufferToFill()</a>, <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a05979.html#l00217">NLMISC::CMemStream::length()</a>, <a class="el" href="a05979.html#l00270">NLMISC::CMemStream::resetBufPos()</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer()</a>, <a class="el" href="a05981.html#l00100">uint32</a>, and <a class="el" href="a05981.html#l00096">uint8</a>.
+<p>
+<div class="fragment"><pre>00437 {
+00438 <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+00439
+00440 <span class="comment">// Serialize length</span>
+00441 <span class="keywordflow">if</span> ( <a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>() )
+00442 {
+00443 <span class="comment">// fill b with data from this</span>
+00444 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (len);
+00445 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a> (b.bufferToFill (len), <a class="code" href="a04223.html#a571">len</a>);
+00446 b.resetBufPos ();
+00447 }
+00448 <span class="keywordflow">else</span>
+00449 {
+00450 <span class="comment">// fill this with data from b</span>
+00451 <a class="code" href="a04223.html#a571">len</a> = b.length();
+00452
+00453 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>( len );
+00454 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2041_1">serialBuffer</a>( (<a class="code" href="a04558.html#a7">uint8</a>*) b.buffer (), <a class="code" href="a04223.html#a571">len</a> );
+00455 }
+00456 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd2" doxytag="NLMISC::IStream::serialMultimap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialMultimap </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+STL map&lt;&gt; and multimap&lt;&gt; serialisation. Support up to sint32 length containers.<p>
+the object T must provide: <ul>
+<li>typedef iterator; (providing operator++() and <a class="el" href="a05378.html#a334">operator*()</a>) </li>
+<li>typedef value_type; (must be a std::pair&lt;&gt;) </li>
+<li>typedef key_type; (must be the type of the key) </li>
+<li>void clear(); </li>
+<li>size_type size() const; </li>
+<li>iterator <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw0">begin()</a>; </li>
+<li>iterator <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw2">end()</a>; </li>
+<li>iterator insert(iterator it, const value_type&amp; x);</li>
+</ul>
+Known Supported containers: map&lt;&gt;, multimap&lt;&gt;. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>cont</em>&nbsp;</td><td>a STL map&lt;&gt; or multimap&lt;&gt; container.</td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l01271">1271</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05646.html#l00237">v</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00701">xmlPush()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00336">serialCont()</a>.
+<p>
+<div class="fragment"><pre>01272 {
+01273 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::value_type __value_type;
+01274 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::key_type __key_type;
+01275 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::iterator __iterator;
+01276
+01277 <span class="comment">// Open a node header</span>
+01278 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin</a> (<span class="stringliteral">"MULTIMAP"</span>);
+01279
+01280 <span class="comment">// Attrib size</span>
+01281 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"size"</span>);
+01282
+01283 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>;
+01284 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+01285 {
+01286 cont.clear();
+01287 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01288
+01289 <span class="comment">// Close the node header</span>
+01290 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+01291
+01292 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+01293 {
+01294 __value_type <a class="code" href="a04223.html#a576">v</a>;
+01295
+01296 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"KEY"</span>);
+01297
+01298 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> ( const_cast&lt;__key_type&amp;&gt;(<a class="code" href="a04223.html#a576">v</a>.first) );
+01299
+01300 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01301
+01302
+01303 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"ELM"</span>);
+01304
+01305 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (<a class="code" href="a04223.html#a576">v</a>.second);
+01306
+01307 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01308
+01309 cont.insert(cont.end(), <a class="code" href="a04223.html#a576">v</a>);
+01310 }
+01311 }
+01312 <span class="keywordflow">else</span>
+01313 {
+01314 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+01315 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01316 __iterator it= cont.begin();
+01317
+01318 <span class="comment">// Close the node header</span>
+01319 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+01320
+01321 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++, it++)
+01322 {
+01323 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"KEY"</span>);
+01324
+01325 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>( const_cast&lt;__key_type&amp;&gt;((*it).first) );
+01326
+01327 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01328
+01329 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"ELM"</span>);
+01330
+01331 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>((*it).second);
+01332
+01333 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01334 }
+01335 }
+01336
+01337 <span class="comment">// Close the node</span>
+01338 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01339 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2035_6" doxytag="NLMISC::IStream::serialPolyPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialPolyPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T *&amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>ptr</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialize Polymorphic Objet Ptr. Works with NULL pointers. If the same object is found mutliple time in the stream, ONLY ONE instance is written! NB: The ptr is serialised as a uint64 (64 bit compliant). <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>ptr</em>&nbsp;</td><td>a pointer on a <a class="el" href="a02867.html">IStreamable</a> object. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_0">resetPtrTable()</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00492">492</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06461.html#l00115">serialIStreamable()</a>.
+<p>
+Referenced by <a class="el" href="a05445.html#l00138">NL3D::CAnimationOptimizer::cloneTrack()</a>, <a class="el" href="a05968.html#l00438">NL3D::CMaterial::CLightMap::serial()</a>, <a class="el" href="a05968.html#l00139">NL3D::CMaterial::serial()</a>, <a class="el" href="a05437.html#l00045">NL3D::CMaterialBase::CAnimatedTexture::serial()</a>, <a class="el" href="a05968.html#l00456">NL3D::CMaterial::CLightMap::serial2()</a>, and <a class="el" href="a06462.html#l01162">serialSTLContLenPolyPtr()</a>.
+<p>
+<div class="fragment"><pre>00493 { IStreamable *p=ptr; <a class="code" href="a02270.html#NLMISC_1_1IStreamd0">serialIStreamable</a>(p); ptr= static_cast&lt;T*&gt;(p);}
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2035_7" doxytag="NLMISC::IStream::serialPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T *&amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>ptr</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialize Non Polymorphic Objet Ptr. Works with NULL pointers. If the same object is found mutliple time in the stream, ONLY ONE instance is written! NB: The ptr is serialised as a uint64 (64 bit compliant). <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>ptr</em>&nbsp;</td><td>a pointer on a base type or an object. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_0">resetPtrTable()</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00390">390</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00890">_IdMap</a>, <a class="el" href="a06462.html#l00889">_NextSerialPtrId</a>, <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00891">ItIdMap</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00102">uint64</a>, <a class="el" href="a06462.html#l00892">ValueIdMap</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+Referenced by <a class="el" href="a06152.html#l00136">NL3D::CParticleSystemShape::buildFromPS()</a>, <a class="el" href="a06152.html#l00344">NL3D::CParticleSystemShape::flushTextures()</a>, <a class="el" href="a06152.html#l00182">NL3D::CParticleSystemShape::instanciatePS()</a>, and <a class="el" href="a06462.html#l01056">serialSTLContLenPtr()</a>.
+<p>
+<div class="fragment"><pre>00391 {
+00392 <a class="code" href="a04558.html#a13">uint64</a> node;
+00393
+00394 <span class="comment">// Open the node header</span>
+00395 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin</a> (<span class="stringliteral">"PTR"</span>);
+00396
+00397 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"id"</span>);
+00398
+00399 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00400 {
+00401 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(node);
+00402
+00403 <span class="comment">// Close the header</span>
+00404 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00405
+00406 <span class="keywordflow">if</span>(node==0)
+00407 ptr=NULL;
+00408 <span class="keywordflow">else</span>
+00409 {
+00410 <a class="code" href="a02270.html#NLMISC_1_1IStreamy0">ItIdMap</a> it;
+00411 it= <a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.find(node);
+00412
+00413 <span class="comment">// Test if object already created/read.</span>
+00414 <span class="keywordflow">if</span>( it==<a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.end() )
+00415 {
+00416 <span class="comment">// Construct object. </span>
+00417 ptr= <span class="keyword">new</span> T;
+00418 <span class="keywordflow">if</span>(ptr==NULL)
+00419 <span class="keywordflow">throw</span> EStream();
+00420
+00421 <span class="comment">// Insert the node.</span>
+00422 <a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.insert( <a class="code" href="a02270.html#NLMISC_1_1IStreamy1">ValueIdMap</a>(node, ptr) );
+00423
+00424 <span class="comment">// Read the object!</span>
+00425 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(*ptr);
+00426 }
+00427 <span class="keywordflow">else</span>
+00428 ptr= static_cast&lt;T*&gt;(it-&gt;second);
+00429 }
+00430 }
+00431 <span class="keywordflow">else</span>
+00432 {
+00433 <span class="keywordflow">if</span>(ptr==NULL)
+00434 {
+00435 node= 0;
+00436 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(node);
+00437
+00438 <span class="comment">// Close the header</span>
+00439 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00440 }
+00441 <span class="keywordflow">else</span>
+00442 {
+00443 <a class="code" href="a02270.html#NLMISC_1_1IStreamy0">ItIdMap</a> it;
+00444 it = <a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.find((<a class="code" href="a04558.html#a13">uint64</a>)(<a class="code" href="a04558.html#a15">uint</a>)ptr);
+00445
+00446 <span class="comment">// Test if object has been already written</span>
+00447 <span class="keywordflow">if</span>( it==<a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.end() )
+00448 {
+00449 <span class="comment">// Not yet written</span>
+00450
+00451 <span class="comment">// Get the next available ID</span>
+00452 node = <a class="code" href="a02270.html#NLMISC_1_1IStreamr2">_NextSerialPtrId</a>++;
+00453
+00454 <span class="comment">// Serial the id</span>
+00455 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(node);
+00456
+00457 <span class="comment">// Insert the pointer in the map with the id</span>
+00458 <a class="code" href="a02270.html#NLMISC_1_1IStreamr0">_IdMap</a>.insert( <a class="code" href="a02270.html#NLMISC_1_1IStreamy1">ValueIdMap</a>((<a class="code" href="a04558.html#a13">uint64</a>)(<a class="code" href="a04558.html#a15">uint</a>)ptr, (<span class="keywordtype">void</span>*)(uint)node) );
+00459
+00460 <span class="comment">// Close the header</span>
+00461 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00462
+00463 <span class="comment">// Write the object</span>
+00464 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(*ptr);
+00465 }
+00466 <span class="keywordflow">else</span>
+00467 {
+00468 <span class="comment">// Write only the object id</span>
+00469 node = (<a class="code" href="a04558.html#a13">uint64</a>)(<a class="code" href="a04558.html#a15">uint</a>)(it-&gt;second);
+00470
+00471 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(node);
+00472
+00473 <span class="comment">// Close the header</span>
+00474 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00475 }
+00476 }
+00477 }
+00478
+00479 <span class="comment">// Close the node</span>
+00480 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00481 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd3" doxytag="NLMISC::IStream::serialSTLCont" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialSTLCont </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+standard STL containers serialisation. Don't work with map&lt;&gt; and multimap&lt;&gt;. Support up to sint32 length containers.<p>
+the object T must provide: <ul>
+<li>typedef iterator; (providing operator++() and <a class="el" href="a05378.html#a334">operator*()</a>) </li>
+<li>typedef value_type; (a base type (uint...), or an object providing "void serial(IStream&amp;)" method.) </li>
+<li>void clear(); </li>
+<li>size_type size() const; </li>
+<li>iterator <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw0">begin()</a>; </li>
+<li>iterator <a class="el" href="a02270.html#NLMISC_1_1IStreamz2036_0NLMISC_1_1IStreamw2">end()</a>; </li>
+<li>iterator insert(iterator it, const value_type&amp; x);</li>
+</ul>
+Known Supported containers: vector&lt;&gt;, list&lt;&gt;, deque&lt;&gt;, set&lt;&gt;, multiset&lt;&gt;. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>cont</em>&nbsp;</td><td>a STL container (vector&lt;&gt;, set&lt;&gt; ...).</td></tr>
+ </table>
+</dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00955">955</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a06462.html#l00905">serialSTLContLen()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00326">serialCont()</a>.
+<p>
+<div class="fragment"><pre>00956 {
+00957 <span class="comment">// Open a node header</span>
+00958 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin</a> (<span class="stringliteral">"CONTAINER"</span>);
+00959
+00960 <span class="comment">// Attrib size</span>
+00961 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"size"</span>);
+00962
+00963 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+00964 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00965 {
+00966 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00967 cont.clear();
+00968 }
+00969 <span class="keywordflow">else</span>
+00970 {
+00971 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+00972 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+00973 }
+00974
+00975 <span class="comment">// Close the header</span>
+00976 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+00977
+00978 <a class="code" href="a02270.html#NLMISC_1_1IStreamd4">serialSTLContLen</a>(cont, len);
+00979
+00980 <span class="comment">// Close the node</span>
+00981 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00982 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd4" doxytag="NLMISC::IStream::serialSTLContLen" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialSTLContLen </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>cont</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>len</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+standard STL containers serialisation. Don't work with map&lt;&gt; and multimap&lt;&gt;. Support up to sint32 length containers. serialize just len element of the container.
+<p>
+Definition at line <a class="el" href="a06462.html#l00905">905</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a05646.html#l00237">v</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, and <a class="el" href="a06462.html#l00701">xmlPush()</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00955">serialSTLCont()</a>.
+<p>
+<div class="fragment"><pre>00906 {
+00907 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::value_type __value_type;
+00908 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::iterator __iterator;
+00909
+00910 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00911 {
+00912 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+00913 {
+00914 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"ELM"</span>);
+00915
+00916 __value_type <a class="code" href="a04223.html#a576">v</a>;
+00917 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(v);
+00918 (<span class="keywordtype">void</span>)cont.insert(cont.end(), <a class="code" href="a04223.html#a576">v</a>);
+00919
+00920 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00921 }
+00922 }
+00923 <span class="keywordflow">else</span>
+00924 {
+00925 __iterator it= cont.begin();
+00926 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++, it++)
+00927 {
+00928 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"ELM"</span>);
+00929
+00930 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(const_cast&lt;__value_type&amp;&gt;(*it));
+00931
+00932 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00933 }
+00934 }
+00935 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd5" doxytag="NLMISC::IStream::serialSTLContLenPolyPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialSTLContLenPolyPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>cont</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>len</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+standard STL containers serialisation. Don't work with map&lt;&gt; and multimap&lt;&gt;. PolyPtr version Support up to sint32 length containers. serialize just len element of the container.
+<p>
+Definition at line <a class="el" href="a06462.html#l01162">1162</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00492">serialPolyPtr()</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a05981.html#l00099">sint32</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l01192">serialSTLContPolyPtr()</a>, and <a class="el" href="a06462.html#l01215">serialVectorPolyPtr()</a>.
+<p>
+<div class="fragment"><pre>01163 {
+01164 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::value_type __value_type;
+01165 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::iterator __iterator;
+01166
+01167 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+01168 {
+01169 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+01170 {
+01171 __value_type <a class="code" href="a04223.html#a576">v</a>=NULL;
+01172 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_6">serialPolyPtr</a>(v);
+01173 cont.insert(cont.end(), <a class="code" href="a04223.html#a576">v</a>);
+01174 }
+01175 }
+01176 <span class="keywordflow">else</span>
+01177 {
+01178 __iterator it= cont.begin();
+01179 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++, it++)
+01180 {
+01181 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_6">serialPolyPtr</a>(const_cast&lt;__value_type&amp;&gt;(*it));
+01182 }
+01183 }
+01184 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd6" doxytag="NLMISC::IStream::serialSTLContLenPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialSTLContLenPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>cont</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap><a class="el" href="a04558.html#a10">sint32</a>&nbsp;</td>
+ <td class="mdname" nowrap> <em>len</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+standard STL containers serialisation. Don't work with map&lt;&gt; and multimap&lt;&gt;. Ptr version. Support up to sint32 length containers. serialize just len element of the container.
+<p>
+Definition at line <a class="el" href="a06462.html#l01056">1056</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00390">serialPtr()</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a05981.html#l00099">sint32</a>, and <a class="el" href="a05646.html#l00237">v</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>, and <a class="el" href="a06462.html#l01121">serialVectorPtr()</a>.
+<p>
+<div class="fragment"><pre>01057 {
+01058 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::value_type __value_type;
+01059 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::iterator __iterator;
+01060
+01061 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+01062 {
+01063 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+01064 {
+01065 __value_type <a class="code" href="a04223.html#a576">v</a>;
+01066 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_7">serialPtr</a>(v);
+01067 cont.insert(cont.end(), <a class="code" href="a04223.html#a576">v</a>);
+01068 }
+01069 }
+01070 <span class="keywordflow">else</span>
+01071 {
+01072 __iterator it= cont.begin();
+01073 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++, it++)
+01074 {
+01075 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_7">serialPtr</a>(const_cast&lt;__value_type&amp;&gt;(*it));
+01076 }
+01077 }
+01078 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd7" doxytag="NLMISC::IStream::serialSTLContPolyPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialSTLContPolyPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+standard STL containers serialisation. Don't work with map&lt;&gt; and multimap&lt;&gt;. PolyPtr version Support up to sint32 length containers.
+<p>
+Definition at line <a class="el" href="a06462.html#l01192">1192</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a06462.html#l01162">serialSTLContLenPolyPtr()</a>, and <a class="el" href="a05981.html#l00099">sint32</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00373">serialContPolyPtr()</a>.
+<p>
+<div class="fragment"><pre>01193 {
+01194 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+01195 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+01196 {
+01197 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01198 cont.clear();
+01199 }
+01200 <span class="keywordflow">else</span>
+01201 {
+01202 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+01203 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01204 }
+01205
+01206 <a class="code" href="a02270.html#NLMISC_1_1IStreamd5">serialSTLContLenPolyPtr</a>(cont, len);
+01207 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd8" doxytag="NLMISC::IStream::serialSTLContPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialSTLContPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+standard STL containers serialisation. Don't work with map&lt;&gt; and multimap&lt;&gt;. Ptr version. Support up to sint32 length containers.
+<p>
+Definition at line <a class="el" href="a06462.html#l01086">1086</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a06462.html#l01056">serialSTLContLenPtr()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00356">serialContPtr()</a>.
+<p>
+<div class="fragment"><pre>01087 {
+01088 <span class="comment">// Open a node header</span>
+01089 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin</a> (<span class="stringliteral">"CONTAINER"</span>);
+01090
+01091 <span class="comment">// Attrib size</span>
+01092 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"size"</span>);
+01093
+01094 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+01095 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+01096 {
+01097 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01098 cont.clear();
+01099 }
+01100 <span class="keywordflow">else</span>
+01101 {
+01102 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+01103 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01104 }
+01105
+01106 <span class="comment">// Close the node header</span>
+01107 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+01108
+01109 <a class="code" href="a02270.html#NLMISC_1_1IStreamd6">serialSTLContLenPtr</a>(cont, len);
+01110
+01111 <span class="comment">// Close the node</span>
+01112 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01113 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamb0" doxytag="NLMISC::IStream::serialVector" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialVector </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+special version for serializing a vector. Support up to sint32 length containers.
+<p>
+Definition at line <a class="el" href="a06462.html#l00992">992</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a05587.html#l00141">NLMISC::contReset()</a>, <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00701">xmlPush()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+Referenced by <a class="el" href="a06472.html#l00124">NLMISC::CStringStream::serialCont()</a>, <a class="el" href="a06462.html#l00324">serialCont()</a>, and <a class="el" href="a05483.html#l00634">NLMISC::CBitMemStream::serialCont()</a>.
+<p>
+<div class="fragment"><pre>00993 {
+00994 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::value_type __value_type;
+00995 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::iterator __iterator;
+00996
+00997 <span class="comment">// Open a node header</span>
+00998 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin</a> (<span class="stringliteral">"VECTOR"</span>);
+00999
+01000 <span class="comment">// Attrib size</span>
+01001 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"size"</span>);
+01002
+01003 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+01004 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+01005 {
+01006 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01007
+01008 <span class="comment">// Open a node header</span>
+01009 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+01010
+01011 <span class="comment">// special version for vector: adjut good size.</span>
+01012 <a class="code" href="a05378.html#a381">contReset</a>(cont);
+01013 cont.resize (len);
+01014
+01015 <span class="comment">// Read the vector</span>
+01016 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++)
+01017 {
+01018 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"ELM"</span>);
+01019
+01020 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(cont[i]);
+01021
+01022 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01023 }
+01024 }
+01025 <span class="keywordflow">else</span>
+01026 {
+01027 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+01028 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01029
+01030 <span class="comment">// Close the node header</span>
+01031 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+01032
+01033 <span class="comment">// Write the vector</span>
+01034 __iterator it= cont.begin();
+01035 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a14">sint</a> i=0;i&lt;<a class="code" href="a04223.html#a571">len</a>;i++, it++)
+01036 {
+01037 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"ELM"</span>);
+01038
+01039 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(const_cast&lt;__value_type&amp;&gt;(*it));
+01040
+01041 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01042 }
+01043 }
+01044
+01045 <span class="comment">// Close the node</span>
+01046 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01047 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd9" doxytag="NLMISC::IStream::serialVectorPolyPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialVectorPolyPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+special version for serializing a vector. PolyPtr version Support up to sint32 length containers.
+<p>
+Definition at line <a class="el" href="a06462.html#l01215">1215</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a05587.html#l00141">NLMISC::contReset()</a>, <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a06462.html#l01162">serialSTLContLenPolyPtr()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00371">serialContPolyPtr()</a>.
+<p>
+<div class="fragment"><pre>01216 {
+01217 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::value_type __value_type;
+01218 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::iterator __iterator;
+01219
+01220 <span class="comment">// Open a node header</span>
+01221 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin</a> (<span class="stringliteral">"VECTOR"</span>);
+01222
+01223 <span class="comment">// Attrib size</span>
+01224 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"size"</span>);
+01225
+01226 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+01227 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+01228 {
+01229 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01230 <span class="comment">// special version for vector: adjut good size.</span>
+01231 <a class="code" href="a05378.html#a381">contReset</a>(cont);
+01232 cont.reserve(len);
+01233 }
+01234 <span class="keywordflow">else</span>
+01235 {
+01236 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+01237 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01238 }
+01239
+01240 <span class="comment">// Close the node header</span>
+01241 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+01242
+01243 <a class="code" href="a02270.html#NLMISC_1_1IStreamd5">serialSTLContLenPolyPtr</a>(cont, len);
+01244
+01245 <span class="comment">// Close the node</span>
+01246 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01247 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamd10" doxytag="NLMISC::IStream::serialVectorPtr" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::serialVectorPtr </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>cont</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, private]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+special version for serializing a vector. Ptr version. Support up to sint32 length containers.
+<p>
+Definition at line <a class="el" href="a06462.html#l01121">1121</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a05587.html#l00141">NLMISC::contReset()</a>, <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a05646.html#l00235">len</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a06462.html#l01056">serialSTLContLenPtr()</a>, <a class="el" href="a05981.html#l00099">sint32</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00354">serialContPtr()</a>.
+<p>
+<div class="fragment"><pre>01122 {
+01123 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::value_type __value_type;
+01124 <span class="keyword">typedef</span> <span class="keyword">typename</span> T::iterator __iterator;
+01125
+01126 <span class="comment">// Open a node header</span>
+01127 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin</a> (<span class="stringliteral">"VECTOR"</span>);
+01128
+01129 <span class="comment">// Attrib size</span>
+01130 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib</a> (<span class="stringliteral">"size"</span>);
+01131
+01132 <a class="code" href="a04558.html#a10">sint32</a> <a class="code" href="a04223.html#a571">len</a>=0;
+01133 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+01134 {
+01135 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01136 <span class="comment">// special version for vector: adjut good size.</span>
+01137 <a class="code" href="a05378.html#a381">contReset</a>(cont);
+01138 cont.reserve(len);
+01139 }
+01140 <span class="keywordflow">else</span>
+01141 {
+01142 <a class="code" href="a04223.html#a571">len</a>= cont.size();
+01143 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(len);
+01144 }
+01145
+01146 <span class="comment">// Close the node header</span>
+01147 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd</a> ();
+01148
+01149 <a class="code" href="a02270.html#NLMISC_1_1IStreamd6">serialSTLContLenPtr</a>(cont, len);
+01150
+01151 <span class="comment">// Close the node</span>
+01152 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+01153 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2035_8" doxytag="NLMISC::IStream::serialVersion" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NLMISC::IStream::serialVersion </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a>&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>currentVersion</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Serialize a version number. Each object should store/read first a version number, using this method. Then he can use the streamVersion returned to see how he should serialise himself.<p>
+NB: Version Number is read/store as a uint8, or uint32 if too bigger.. <dl compact><dt><b>Parameters:</b></dt><dd>
+ <table border="0" cellspacing="2" cellpadding="0">
+ <tr><td valign=top><em>currentVersion</em>&nbsp;</td><td>the current version of the class, provided by user. </td></tr>
+ </table>
+</dl>
+<dl compact><dt><b>Returns:</b></dt><dd>the version of the stream. If the stream is an Output stream, currentVersion is returned. </dd></dl>
+<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02270.html#NLMISC_1_1IStreame1">setVersionException()</a> <a class="el" href="a02270.html#NLMISC_1_1IStreame0">getVersionException()</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06461.html#l00266">266</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06461.html#l00067">_ThrowOnNewer</a>, <a class="el" href="a06461.html#l00066">_ThrowOnOlder</a>, <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05981.html#l00100">uint32</a>, <a class="el" href="a05981.html#l00096">uint8</a>, <a class="el" href="a05646.html#l00237">v</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, and <a class="el" href="a06462.html#l00701">xmlPush()</a>.
+<p>
+Referenced by <a class="el" href="a06005.html#l00055">NL3D::H_AUTO_DECL()</a>, <a class="el" href="a05668.html#l00405">NLMISC::CEntityIdTranslator::load()</a>, <a class="el" href="a05926.html#l00145">loadForm()</a>, <a class="el" href="a05668.html#l00442">NLMISC::CEntityIdTranslator::save()</a>, <a class="el" href="a06772.html#l00159">NLLIGO::CZoneRegion::serial()</a>, <a class="el" href="a06772.html#l00101">NLLIGO::CZoneRegion::SZoneUnit2::serial()</a>, <a class="el" href="a06762.html#l00105">NLLIGO::CZoneBankElement::serial()</a>, <a class="el" href="a06758.html#l00432">NL3D::CZone::serial()</a>, <a class="el" href="a06758.html#l00421">NL3D::CPatchInfo::CBindInfo::serial()</a>, <a class="el" href="a06758.html#l00410">NL3D::CZone::CPatchConnect::serial()</a>, <a class="el" href="a06758.html#l00402">NL3D::CBorderVertex::serial()</a>, <a class="el" href="a06710.html#l00854">NL3D::CVertexBuffer::serial()</a>, <a class="el" href="a06702.html#l00186">NL3D::CVegetableShape::serial()</a>, <a class="el" href="a06686.html#l00375">NL3D::CVegetable::serial()</a>, <a class="el" href="a06564.html#l00062">NL3D::CTrackSampledVector::serial()</a>, <a class="el" href="a06562.html#l00125">NL3D::CTrackSampledQuat::serial()</a>, <a class="el" href="a06560.html#l00080">NL3D::CTrackSampledCommon::CTimeBlock::serial()</a>, <a class="el" href="a06550.html#l00099">NL3D::CTileVegetableDesc::serial()</a>, <a class="el" href="a06548.html#l00036">NL3D::CTileNoiseMap::serial()</a>, <a class="el" href="a06536.html#l01912">NL3D::CTileNoise::serial()</a>, <a class="el" href="a06477.html#l00329">NLPACS::CSurfaceQuadTree::serial()</a>, <a class="el" href="a06476.html#l00076">NL3D::CSurfaceLightGrid::CCellCorner::serial()</a>, <a class="el" href="a06475.html#l00051">NL3D::CSurfaceLightGrid::serial()</a>, <a class="el" href="a06399.html#l00083">NL3D::CSkeletonWeight::CNode::serial()</a>, <a class="el" href="a06399.html#l00069">NL3D::CSkeletonWeight::serial()</a>, <a class="el" href="a06350.html#l00379">NL3D::CInstanceGroup::serial()</a>, <a class="el" href="a06350.html#l00065">NL3D::CInstanceGroup::CInstance::serial()</a>, <a class="el" href="a06337.html#l00736">NLPACS::CRetrieverInstance::serial()</a>, <a class="el" href="a06336.html#l00114">NLPACS::CRetrieverBank::serial()</a>, <a class="el" href="a06333.html#l00051">NLPACS::CRetrievableSurface::serial()</a>, <a class="el" href="a06213.html#l00438">NL3D::CPSAttrib&lt; T &gt;::serial()</a>, <a class="el" href="a06197.html#l00219">NL3D::CPrimitiveBlock::serial()</a>, <a class="el" href="a06193.html#l00216">NL3D::CPortal::serial()</a>, <a class="el" href="a06187.html#l00100">NL3D::CPointLightNamedArray::CPointLightGroup::serial()</a>, <a class="el" href="a06186.html#l00164">NL3D::CPointLightNamedArray::serial()</a>, <a class="el" href="a06184.html#l00073">NL3D::CPointLightNamed::serial()</a>, <a class="el" href="a06179.html#l00230">NL3D::CPointLight::serial()</a>, <a class="el" href="a06155.html#l01576">NL3D::CPatch::serial()</a>, <a class="el" href="a06105.html#l00337">NLMISC::CNoiseColorGradient::serial()</a>, <a class="el" href="a06105.html#l00294">NLMISC::CNoiseValue::serial()</a>, <a class="el" href="a06012.html#l00314">NL3D::CMeshMRMSkinnedGeom::CRdrPass::serial()</a>, <a class="el" href="a06012.html#l00262">NL3D::CMeshMRMSkinnedGeom::CShadowVertex::serial()</a>, <a class="el" href="a06011.html#l01937">NL3D::CMeshMRMSkinnedGeom::CPackedVertexBuffer::CPackedVertex::serial()</a>, <a class="el" href="a06011.html#l01926">NL3D::CMeshMRMSkinnedGeom::CPackedVertexBuffer::serial()</a>, <a class="el" href="a06011.html#l01482">NL3D::CMeshMRMSkinned::serial()</a>, <a class="el" href="a06011.html#l00991">NL3D::CMeshMRMSkinnedGeom::serial()</a>, <a class="el" href="a06006.html#l00463">NL3D::CMeshMRMGeom::CLodInfo::serial()</a>, <a class="el" href="a06006.html#l00350">NL3D::CMeshMRMGeom::CRdrPass::serial()</a>, <a class="el" href="a06006.html#l00296">NL3D::CMeshMRMGeom::CShadowVertex::serial()</a>, <a class="el" href="a05992.html#l00103">NL3D::CMeshBase::CLightMapInfoList::serial()</a>, <a class="el" href="a05992.html#l00092">NL3D::CMeshBase::CLightMapInfoList::CMatStage::serial()</a>, <a class="el" href="a05990.html#l00518">NL3D::CMeshGeom::CMatrixBlock::serial()</a>, <a class="el" href="a05990.html#l00497">NL3D::CMeshGeom::CRdrPass::serial()</a>, <a class="el" href="a05972.html#l01500">NLMISC::CMatrix::serial()</a>, <a class="el" href="a05968.html#l00139">NL3D::CMaterial::serial()</a>, <a class="el" href="a05941.html#l00043">NL3D::CLodCharacterTexture::serial()</a>, <a class="el" href="a05939.html#l00121">NL3D::CLodCharacterShapeBank::serial()</a>, <a class="el" href="a05937.html#l00505">NL3D::CLodCharacterShape::serial()</a>, <a class="el" href="a05937.html#l00495">NL3D::CLodCharacterShape::CBoneInfluence::serial()</a>, <a class="el" href="a05937.html#l00481">NL3D::CLodCharacterShape::CAnim::serial()</a>, <a class="el" href="a05937.html#l00273">NL3D::CLodCharacterShapeBuild::serial()</a>, <a class="el" href="a05929.html#l00895">NLPACS::CLocalRetriever::serial()</a>, <a class="el" href="a05807.html#l00056">NL3D::CIGSurfaceLight::CRetrieverLightGrid::serial()</a>, <a class="el" href="a05806.html#l00098">NL3D::CIGSurfaceLight::serial()</a>, <a class="el" href="a05792.html#l00154">NL3D::CHLSTextureBank::CTextureInstance::serial()</a>, <a class="el" href="a05792.html#l00117">NL3D::CHLSTextureBank::serial()</a>, <a class="el" href="a05790.html#l00313">NL3D::CHLSColorTexture::serial()</a>, <a class="el" href="a05790.html#l00057">NL3D::CHLSColorTexture::CMask::serial()</a>, <a class="el" href="a05790.html#l00049">NL3D::CHLSColorDelta::serial()</a>, <a class="el" href="a05761.html#l00136">NLPACS::CGlobalRetriever::serial()</a>, <a class="el" href="a05694.html#l00170">NLPACS::CFaceGrid::serial()</a>, <a class="el" href="a05692.html#l00098">NLPACS::CExteriorMesh::serial()</a>, <a class="el" href="a05666.html#l00571">NLPACS::CEdgeQuad::serial()</a>, <a class="el" href="a05563.html#l00250">NL3D::CCluster::serial()</a>, <a class="el" href="a05541.html#l00473">NLPACS::CChainQuad::serial()</a>, <a class="el" href="a05539.html#l00274">NLPACS::CChain::serial()</a>, <a class="el" href="a05539.html#l00158">NLPACS::COrderedChain::serial()</a>, <a class="el" href="a05539.html#l00064">NLPACS::COrderedChain3f::serial()</a>, <a class="el" href="a05491.html#l00056">NL3D::CBoneBase::serial()</a>, <a class="el" href="a05484.html#l00294">NLMISC::CBitSet::serial()</a>, <a class="el" href="a05449.html#l00134">NL3D::CAnimationSet::serial()</a>, <a class="el" href="a05447.html#l00292">NL3D::CAnimationPlaylist::serial()</a>, <a class="el" href="a05443.html#l00080">NL3D::CAnimation::serial()</a>, <a class="el" href="a05438.html#l00103">NL3D::CMaterialBase::CTexAnimTracks::serial()</a>, <a class="el" href="a05437.html#l00080">NL3D::CMaterialBase::serial()</a>, <a class="el" href="a05384.html#l00206">NLMISC::CAABBox::serial()</a>, <a class="el" href="a05968.html#l00456">NL3D::CMaterial::CLightMap::serial2()</a>, <a class="el" href="a06560.html#l00090">NL3D::CTrackSampledCommon::serialCommon()</a>, <a class="el" href="a06710.html#l00883">NL3D::CVertexBuffer::serialHeader()</a>, <a class="el" href="a06005.html#l01918">NL3D::CMeshMRMGeom::serialLodVertexData()</a>, and <a class="el" href="a06710.html#l01008">NL3D::CVertexBuffer::serialSubset()</a>.
+<p>
+<div class="fragment"><pre>00267 {
+00268 <a class="code" href="a04558.html#a7">uint8</a> b=0;
+00269 <a class="code" href="a04558.html#a11">uint32</a> <a class="code" href="a04223.html#a576">v</a>=0;
+00270 <a class="code" href="a04558.html#a15">uint</a> streamVersion;
+00271
+00272 <span class="comment">// Open the node</span>
+00273 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (<span class="stringliteral">"VERSION"</span>);
+00274
+00275 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreama0">isReading</a>())
+00276 {
+00277 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b);
+00278 <span class="keywordflow">if</span>(b==0xFF)
+00279 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(v);
+00280 <span class="keywordflow">else</span>
+00281 <a class="code" href="a04223.html#a576">v</a>=b;
+00282 streamVersion=<a class="code" href="a04223.html#a576">v</a>;
+00283
+00284 <span class="comment">// Exception test.</span>
+00285 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreamv1">_ThrowOnOlder</a> &amp;&amp; streamVersion &lt; currentVersion)
+00286 <span class="keywordflow">throw</span> EOlderStream(*<span class="keyword">this</span>);
+00287 <span class="keywordflow">if</span>(<a class="code" href="a02270.html#NLMISC_1_1IStreamv0">_ThrowOnNewer</a> &amp;&amp; streamVersion &gt; currentVersion)
+00288 <span class="keywordflow">throw</span> ENewerStream(*<span class="keyword">this</span>);
+00289 }
+00290 <span class="keywordflow">else</span>
+00291 {
+00292 <a class="code" href="a04223.html#a576">v</a>= streamVersion=currentVersion;
+00293 <span class="keywordflow">if</span>(<a class="code" href="a04223.html#a576">v</a>&gt;=0xFF)
+00294 {
+00295 b=0xFF;
+00296 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b);
+00297 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(v);
+00298 }
+00299 <span class="keywordflow">else</span>
+00300 {
+00301 b= (<a class="code" href="a04558.html#a7">uint8</a>)<a class="code" href="a04223.html#a576">v</a>;
+00302 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(b);
+00303 }
+00304 }
+00305
+00306 <span class="comment">// Close the node</span>
+00307 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00308
+00309 <span class="keywordflow">return</span> streamVersion;
+00310 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2040_1" doxytag="NLMISC::IStream::setInOut" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::setInOut </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>inputStream</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Change, in live, the state of the inputStream. This could be usefull in certain case. The deriver which would want to do such a thing must call this method, and implement his own behavior. In certain case, it should call <a class="el" href="a02270.html#NLMISC_1_1IStreamz2040_0">resetPtrTable()</a> if he want to reset the stream ptr info (maybe always)...
+<p>
+Definition at line <a class="el" href="a06461.html#l00413">413</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06462.html#l00884">_InputStream</a>.
+<p>
+Referenced by <a class="el" href="a05482.html#l00737">NLMISC::CBitMemStream::getSerialItem()</a>, and <a class="el" href="a05979.html#l00331">NLMISC::CMemStream::invert()</a>.
+<p>
+<div class="fragment"><pre>00414 {
+00415 <a class="code" href="a02270.html#NLMISC_1_1IStreamr1">_InputStream</a>= inputStream;
+00416 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreame1" doxytag="NLMISC::IStream::setVersionException" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::setVersionException </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname" nowrap> <em>throwOnOlder</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>bool&nbsp;</td>
+ <td class="mdname" nowrap> <em>throwOnNewer</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [static]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the behavior of <a class="el" href="a02270.html">IStream</a> regarding input stream that are older/newer than the class. If throwOnOlder==true, <a class="el" href="a02270.html">IStream</a> throws a <a class="el" href="a03798.html">EOlderStream</a> when needed. If throwOnNewer==true, <a class="el" href="a02270.html">IStream</a> throws a <a class="el" href="a03797.html">ENewerStream</a> when needed.<p>
+By default, the behavior is throwOnOlder=false, throwOnNewer=true. <dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion()</a> <a class="el" href="a02270.html#NLMISC_1_1IStreame0">getVersionException()</a></dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06461.html#l00071">71</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06461.html#l00067">_ThrowOnNewer</a>, and <a class="el" href="a06461.html#l00066">_ThrowOnOlder</a>.
+<p>
+<div class="fragment"><pre>00072 {
+00073 <a class="code" href="a02270.html#NLMISC_1_1IStreamv1">_ThrowOnOlder</a>=throwOnOlder;
+00074 <a class="code" href="a02270.html#NLMISC_1_1IStreamv0">_ThrowOnNewer</a>=throwOnNewer;
+00075 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2040_2" doxytag="NLMISC::IStream::setXMLMode" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::setXMLMode </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">bool&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>on</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [protected]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+Set the XML mode is true to enable XML mode else false
+<p>
+Definition at line <a class="el" href="a06461.html#l00427">427</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>.
+<p>
+Referenced by <a class="el" href="a06107.html#l00075">NLMISC::COXml::COXml()</a>, and <a class="el" href="a06107.html#l00111">NLMISC::COXml::init()</a>.
+<p>
+<div class="fragment"><pre>00428 {
+00429 <a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a> = on;
+00430 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2039_0" doxytag="NLMISC::IStream::xmlBreakLine" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::xmlBreakLine </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="a02270.html#NLMISC_1_1IStreamz2039_0">xmlBreakLine()</a> insert a break line in the XML stream.<p>
+<dl compact><dt><b>Returns:</b></dt><dd>true if the break line is added, return false if no node is opened.</dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00794">794</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>, and <a class="el" href="a06462.html#l00845">xmlBreakLineInternal()</a>.
+<p>
+<div class="fragment"><pre>00795 {
+00796 <span class="comment">// XML Mode ?</span>
+00797 <span class="keywordflow">if</span> (<a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a>)
+00798 {
+00799 <span class="keywordflow">return</span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_3">xmlBreakLineInternal</a> ();
+00800 }
+00801
+00802 <span class="comment">// Return ok</span>
+00803 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00804 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2040_3" doxytag="NLMISC::IStream::xmlBreakLineInternal" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NLMISC::IStream::xmlBreakLineInternal </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+xmlBreakLine implementation
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03032.html#NLMISC_1_1COXmld18">NLMISC::COXml</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00845">845</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00794">xmlBreakLine()</a>.
+<p>
+<div class="fragment"><pre>00845 { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2039_1" doxytag="NLMISC::IStream::xmlComment" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::xmlComment </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>comment</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="a02270.html#NLMISC_1_1IStreamz2039_1">xmlComment()</a> insert a comment line in the XML stream.<p>
+<dl compact><dt><b>Returns:</b></dt><dd>true if the comment is added, return false if no node is opened.</dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00811">811</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>, <a class="el" href="a04115.html#a118">comment()</a>, and <a class="el" href="a06462.html#l00848">xmlCommentInternal()</a>.
+<p>
+<div class="fragment"><pre>00812 {
+00813 <span class="comment">// XML Mode ?</span>
+00814 <span class="keywordflow">if</span> (<a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a>)
+00815 {
+00816 <span class="keywordflow">return</span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_4">xmlCommentInternal</a> (comment);
+00817 }
+00818
+00819 <span class="comment">// Return ok</span>
+00820 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00821 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2040_4" doxytag="NLMISC::IStream::xmlCommentInternal" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NLMISC::IStream::xmlCommentInternal </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>comment</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+xmlComment implementation
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03032.html#NLMISC_1_1COXmld19">NLMISC::COXml</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00848">848</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00811">xmlComment()</a>.
+<p>
+<div class="fragment"><pre>00848 { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2039_2" doxytag="NLMISC::IStream::xmlPop" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::xmlPop </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop()</a> close the node.<p>
+<dl compact><dt><b>Returns:</b></dt><dd>true if you can close the node, false if the node can't be closed (its header is still opened) or if there is no node to close.</dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00759">759</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>, and <a class="el" href="a06462.html#l00839">xmlPopInternal()</a>.
+<p>
+Referenced by <a class="el" href="a06772.html#l00159">NLLIGO::CZoneRegion::serial()</a>, <a class="el" href="a06762.html#l00105">NLLIGO::CZoneBankElement::serial()</a>, <a class="el" href="a06758.html#l00432">NL3D::CZone::serial()</a>, <a class="el" href="a06155.html#l01576">NL3D::CPatch::serial()</a>, <a class="el" href="a06116.html#l00260">NLMISC::CObjectVector&lt; sint8, false &gt;::serial()</a>, <a class="el" href="a06107.html#l00315">NLMISC::COXml::serial()</a>, <a class="el" href="a06107.html#l00373">NLMISC::COXml::serialBuffer()</a>, <a class="el" href="a06462.html#l00520">serialCheck()</a>, <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, <a class="el" href="a06462.html#l01360">serialMap()</a>, <a class="el" href="a06462.html#l01271">serialMultimap()</a>, <a class="el" href="a06462.html#l00390">serialPtr()</a>, <a class="el" href="a06462.html#l00955">serialSTLCont()</a>, <a class="el" href="a06462.html#l00905">serialSTLContLen()</a>, <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>, <a class="el" href="a06462.html#l00992">serialVector()</a>, <a class="el" href="a06462.html#l01215">serialVectorPolyPtr()</a>, <a class="el" href="a06462.html#l01121">serialVectorPtr()</a>, <a class="el" href="a06461.html#l00266">serialVersion()</a>, and <a class="el" href="a06462.html#l00647">xmlSerial()</a>.
+<p>
+<div class="fragment"><pre>00760 {
+00761 <span class="comment">// XML Mode ?</span>
+00762 <span class="keywordflow">if</span> (<a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a>)
+00763 {
+00764 <span class="keywordflow">return</span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_5">xmlPopInternal</a> ();
+00765 }
+00766
+00767 <span class="comment">// Return ok</span>
+00768 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00769 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2040_5" doxytag="NLMISC::IStream::xmlPopInternal" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NLMISC::IStream::xmlPopInternal </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+xmlPop implementation
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03032.html#NLMISC_1_1COXmld20">NLMISC::COXml</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00839">839</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00759">xmlPop()</a>.
+<p>
+<div class="fragment"><pre>00839 { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2038_0" doxytag="NLMISC::IStream::xmlPush" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::xmlPush </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00701">701</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>, <a class="el" href="a05646.html#l01119">res</a>, <a class="el" href="a06462.html#l00833">xmlPushBeginInternal()</a>, and <a class="el" href="a06462.html#l00836">xmlPushEndInternal()</a>.
+<p>
+Referenced by <a class="el" href="a06772.html#l00159">NLLIGO::CZoneRegion::serial()</a>, <a class="el" href="a06762.html#l00105">NLLIGO::CZoneBankElement::serial()</a>, <a class="el" href="a06758.html#l00432">NL3D::CZone::serial()</a>, <a class="el" href="a06155.html#l01576">NL3D::CPatch::serial()</a>, <a class="el" href="a06116.html#l00260">NLMISC::CObjectVector&lt; sint8, false &gt;::serial()</a>, <a class="el" href="a06107.html#l00315">NLMISC::COXml::serial()</a>, <a class="el" href="a06107.html#l00373">NLMISC::COXml::serialBuffer()</a>, <a class="el" href="a06462.html#l00520">serialCheck()</a>, <a class="el" href="a06462.html#l01360">serialMap()</a>, <a class="el" href="a06462.html#l01271">serialMultimap()</a>, <a class="el" href="a06462.html#l00905">serialSTLContLen()</a>, <a class="el" href="a06462.html#l00992">serialVector()</a>, <a class="el" href="a06461.html#l00266">serialVersion()</a>, and <a class="el" href="a06462.html#l00647">xmlSerial()</a>.
+<p>
+<div class="fragment"><pre>00702 {
+00703 <span class="comment">// XML Mode ?</span>
+00704 <span class="keywordflow">if</span> (<a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a>)
+00705 {
+00706 <span class="comment">// Open the header</span>
+00707 <span class="keywordtype">bool</span> <a class="code" href="a04223.html#a643">res</a>=<a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_6">xmlPushBeginInternal</a> (name);
+00708 <span class="keywordflow">if</span> (<a class="code" href="a04223.html#a643">res</a>)
+00709 <span class="comment">// close the header</span>
+00710 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_7">xmlPushEndInternal</a> ();
+00711 <span class="comment">// Return the result</span>
+00712 <span class="keywordflow">return</span> <a class="code" href="a04223.html#a643">res</a>;
+00713 }
+00714
+00715 <span class="comment">// Return ok</span>
+00716 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00717 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2039_3" doxytag="NLMISC::IStream::xmlPushBegin" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::xmlPushBegin </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="a02270.html#NLMISC_1_1IStreamz2039_0">xmlBreakLine()</a> insert a break line in the XML stream.<p>
+<dl compact><dt><b>Returns:</b></dt><dd>true if the break line is added, return false if no node is opened.</dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00725">725</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>, and <a class="el" href="a06462.html#l00833">xmlPushBeginInternal()</a>.
+<p>
+Referenced by <a class="el" href="a06116.html#l00260">NLMISC::CObjectVector&lt; sint8, false &gt;::serial()</a>, <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, <a class="el" href="a06462.html#l01360">serialMap()</a>, <a class="el" href="a06462.html#l01271">serialMultimap()</a>, <a class="el" href="a06462.html#l00390">serialPtr()</a>, <a class="el" href="a06462.html#l00955">serialSTLCont()</a>, <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>, <a class="el" href="a06462.html#l00992">serialVector()</a>, <a class="el" href="a06462.html#l01215">serialVectorPolyPtr()</a>, and <a class="el" href="a06462.html#l01121">serialVectorPtr()</a>.
+<p>
+<div class="fragment"><pre>00726 {
+00727 <span class="comment">// XML Mode ?</span>
+00728 <span class="keywordflow">if</span> (<a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a>)
+00729 {
+00730 <span class="keywordflow">return</span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_6">xmlPushBeginInternal</a> (name);
+00731 }
+00732
+00733 <span class="comment">// Return ok</span>
+00734 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00735 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2040_6" doxytag="NLMISC::IStream::xmlPushBeginInternal" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NLMISC::IStream::xmlPushBeginInternal </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+xmlPushBegin implementation
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03032.html#NLMISC_1_1COXmld21">NLMISC::COXml</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00833">833</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00701">xmlPush()</a>, and <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>.
+<p>
+<div class="fragment"><pre>00833 { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2039_4" doxytag="NLMISC::IStream::xmlPushEnd" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::xmlPushEnd </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="a02270.html#NLMISC_1_1IStreamz2039_4">xmlPushEnd()</a> close the node header.<p>
+<dl compact><dt><b>Returns:</b></dt><dd>true if you can close the node header, false if no node header have been opened with <a class="el" href="a02270.html#NLMISC_1_1IStreamz2039_3">xmlPushBegin()</a>.</dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00742">742</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>, and <a class="el" href="a06462.html#l00836">xmlPushEndInternal()</a>.
+<p>
+Referenced by <a class="el" href="a06116.html#l00260">NLMISC::CObjectVector&lt; sint8, false &gt;::serial()</a>, <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, <a class="el" href="a06462.html#l01360">serialMap()</a>, <a class="el" href="a06462.html#l01271">serialMultimap()</a>, <a class="el" href="a06462.html#l00390">serialPtr()</a>, <a class="el" href="a06462.html#l00955">serialSTLCont()</a>, <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>, <a class="el" href="a06462.html#l00992">serialVector()</a>, <a class="el" href="a06462.html#l01215">serialVectorPolyPtr()</a>, and <a class="el" href="a06462.html#l01121">serialVectorPtr()</a>.
+<p>
+<div class="fragment"><pre>00743 {
+00744 <span class="comment">// XML Mode ?</span>
+00745 <span class="keywordflow">if</span> (<a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a>)
+00746 {
+00747 <span class="keywordflow">return</span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_7">xmlPushEndInternal</a> ();
+00748 }
+00749
+00750 <span class="comment">// Return ok</span>
+00751 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00752 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2040_7" doxytag="NLMISC::IStream::xmlPushEndInternal" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NLMISC::IStream::xmlPushEndInternal </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+xmlPushEnd implementation
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03032.html#NLMISC_1_1COXmld22">NLMISC::COXml</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00836">836</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00701">xmlPush()</a>, and <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>.
+<p>
+<div class="fragment"><pre>00836 { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2037_0" doxytag="NLMISC::IStream::xmlSerial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::xmlSerial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value0</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value1</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value2</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value3</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>const char *&nbsp;</td>
+ <td class="mdname" nowrap> <em>nodeName</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00683">683</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, and <a class="el" href="a06462.html#l00701">xmlPush()</a>.
+<p>
+<div class="fragment"><pre>00684 {
+00685 <span class="comment">// Open the node</span>
+00686 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (nodeName);
+00687
+00688 <span class="comment">// Serial the values</span>
+00689 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (value0, value1, value2, value3);
+00690
+00691 <span class="comment">// Close the node</span>
+00692 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00693 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2037_1" doxytag="NLMISC::IStream::xmlSerial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::xmlSerial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value0</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value1</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value2</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>const char *&nbsp;</td>
+ <td class="mdname" nowrap> <em>nodeName</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00671">671</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, and <a class="el" href="a06462.html#l00701">xmlPush()</a>.
+<p>
+<div class="fragment"><pre>00672 {
+00673 <span class="comment">// Open the node</span>
+00674 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (nodeName);
+00675
+00676 <span class="comment">// Serial the values</span>
+00677 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (value0, value1, value2);
+00678
+00679 <span class="comment">// Close the node</span>
+00680 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00681 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2037_2" doxytag="NLMISC::IStream::xmlSerial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::xmlSerial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value0</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value1</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>const char *&nbsp;</td>
+ <td class="mdname" nowrap> <em>nodeName</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00659">659</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, and <a class="el" href="a06462.html#l00701">xmlPush()</a>.
+<p>
+<div class="fragment"><pre>00660 {
+00661 <span class="comment">// Open the node</span>
+00662 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (nodeName);
+00663
+00664 <span class="comment">// Serial the values</span>
+00665 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (value0, value1);
+00666
+00667 <span class="comment">// Close the node</span>
+00668 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00669 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2037_3" doxytag="NLMISC::IStream::xmlSerial" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" colspan="4">
+template&lt;class T&gt; </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap valign="top"> void NLMISC::IStream::xmlSerial </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">T &amp;&nbsp;</td>
+ <td class="mdname" nowrap> <em>value0</em>, </td>
+ </tr>
+ <tr>
+ <td class="md" nowrap align="right"></td>
+ <td></td>
+ <td class="md" nowrap>const char *&nbsp;</td>
+ <td class="mdname" nowrap> <em>nodeName</em></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td class="md">)&nbsp;</td>
+ <td class="md" colspan="2"><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="a02270.html#NLMISC_1_1IStreamz2037_3">xmlSerial()</a> serial a values into a node.
+<p>
+Definition at line <a class="el" href="a06462.html#l00647">647</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l00232">serial()</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, and <a class="el" href="a06462.html#l00701">xmlPush()</a>.
+<p>
+Referenced by <a class="el" href="a06772.html#l00159">NLLIGO::CZoneRegion::serial()</a>, <a class="el" href="a06772.html#l00101">NLLIGO::CZoneRegion::SZoneUnit2::serial()</a>, <a class="el" href="a06772.html#l00057">NLLIGO::CZoneRegion::SZoneUnit::serial()</a>, <a class="el" href="a06758.html#l00432">NL3D::CZone::serial()</a>, <a class="el" href="a06758.html#l00421">NL3D::CPatchInfo::CBindInfo::serial()</a>, <a class="el" href="a06758.html#l00410">NL3D::CZone::CPatchConnect::serial()</a>, <a class="el" href="a06758.html#l00402">NL3D::CBorderVertex::serial()</a>, <a class="el" href="a06540.html#l00082">NL3D::CTileElement::serial()</a>, <a class="el" href="a06539.html#l00080">NL3D::CTileColorOldPatchVersion6::serial()</a>, <a class="el" href="a06539.html#l00056">NL3D::CTileColor::serial()</a>, and <a class="el" href="a06155.html#l01576">NL3D::CPatch::serial()</a>.
+<p>
+<div class="fragment"><pre>00648 {
+00649 <span class="comment">// Open the node</span>
+00650 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2038_0">xmlPush</a> (nodeName);
+00651
+00652 <span class="comment">// Serial the value</span>
+00653 <a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a> (value0);
+00654
+00655 <span class="comment">// Close the node</span>
+00656 <a class="code" href="a02270.html#NLMISC_1_1IStreamz2039_2">xmlPop</a> ();
+00657 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2039_5" doxytag="NLMISC::IStream::xmlSetAttrib" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool NLMISC::IStream::xmlSetAttrib </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+<a class="el" href="a02270.html#NLMISC_1_1IStreamz2039_5">xmlSetAttrib()</a> set the name of the next node header attribute serialised.<p>
+is the name of the node header attribute serialised. <dl compact><dt><b>Returns:</b></dt><dd>true if the attribute name have been set, false if the node header is not open (the call is not between xmlPushBegin and xmlPushEnd)</dd></dl>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00777">777</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+References <a class="el" href="a06462.html#l01443">_XML</a>, and <a class="el" href="a06462.html#l00842">xmlSetAttribInternal()</a>.
+<p>
+Referenced by <a class="el" href="a06116.html#l00260">NLMISC::CObjectVector&lt; sint8, false &gt;::serial()</a>, <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, <a class="el" href="a06462.html#l01360">serialMap()</a>, <a class="el" href="a06462.html#l01271">serialMultimap()</a>, <a class="el" href="a06462.html#l00390">serialPtr()</a>, <a class="el" href="a06462.html#l00955">serialSTLCont()</a>, <a class="el" href="a06462.html#l01086">serialSTLContPtr()</a>, <a class="el" href="a06462.html#l00992">serialVector()</a>, <a class="el" href="a06462.html#l01215">serialVectorPolyPtr()</a>, and <a class="el" href="a06462.html#l01121">serialVectorPtr()</a>.
+<p>
+<div class="fragment"><pre>00778 {
+00779 <span class="comment">// XML Mode ?</span>
+00780 <span class="keywordflow">if</span> (<a class="code" href="a02270.html#NLMISC_1_1IStreamr3">_XML</a>)
+00781 {
+00782 <span class="keywordflow">return</span> <a class="code" href="a02270.html#NLMISC_1_1IStreamz2040_8">xmlSetAttribInternal</a> (name);
+00783 }
+00784
+00785 <span class="comment">// Return ok</span>
+00786 <span class="keywordflow">return</span> <span class="keyword">true</span>;
+00787 }
+</pre></div> </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamz2040_8" doxytag="NLMISC::IStream::xmlSetAttribInternal" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> virtual bool NLMISC::IStream::xmlSetAttribInternal </td>
+ <td class="md" valign="top">(&nbsp;</td>
+ <td class="md" nowrap valign="top">const char *&nbsp;</td>
+ <td class="mdname1" valign="top" nowrap> <em>name</em> </td>
+ <td class="md" valign="top">&nbsp;)&nbsp;</td>
+ <td class="md" nowrap><code> [inline, protected, virtual]</code></td>
+ </tr>
+
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+xmlBreakLine implementation
+<p>
+
+<p>
+Reimplemented in <a class="el" href="a03032.html#NLMISC_1_1COXmld23">NLMISC::COXml</a>.
+<p>
+Definition at line <a class="el" href="a06462.html#l00842">842</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>.
+<p>
+<div class="fragment"><pre>00842 { <span class="keywordflow">return</span> <span class="keyword">true</span>; };
+</pre></div> </td>
+ </tr>
+</table>
+<hr><h2>Field Documentation</h2>
+<a class="anchor" name="NLMISC_1_1IStreamr0" doxytag="NLMISC::IStream::_IdMap" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> std::hash_map&lt;<a class="el" href="a04558.html#a13">uint64</a>, void*, <a class="el" href="a02606.html">CHashFunctionUInt64</a>&gt; <a class="el" href="a02270.html#NLMISC_1_1IStreamr0">NLMISC::IStream::_IdMap</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00890">890</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06461.html#l00253">resetPtrTable()</a>, <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, and <a class="el" href="a06462.html#l00390">serialPtr()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamr1" doxytag="NLMISC::IStream::_InputStream" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a02270.html#NLMISC_1_1IStreamr1">NLMISC::IStream::_InputStream</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00884">884</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06463.html#l00064">isReading()</a>, <a class="el" href="a06463.html#l00055">IStream()</a>, <a class="el" href="a06461.html#l00101">operator=()</a>, and <a class="el" href="a06461.html#l00413">setInOut()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamr2" doxytag="NLMISC::IStream::_NextSerialPtrId" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a02270.html#NLMISC_1_1IStreamr2">NLMISC::IStream::_NextSerialPtrId</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l00889">889</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06461.html#l00253">resetPtrTable()</a>, <a class="el" href="a06461.html#l00115">serialIStreamable()</a>, and <a class="el" href="a06462.html#l00390">serialPtr()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamv0" doxytag="NLMISC::IStream::_ThrowOnNewer" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a02270.html#NLMISC_1_1IStreamv0">NLMISC::IStream::_ThrowOnNewer</a> = true<code> [static, private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06461.html#l00067">67</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+Referenced by <a class="el" href="a06461.html#l00078">getVersionException()</a>, <a class="el" href="a06461.html#l00266">serialVersion()</a>, and <a class="el" href="a06461.html#l00071">setVersionException()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamv1" doxytag="NLMISC::IStream::_ThrowOnOlder" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a02270.html#NLMISC_1_1IStreamv1">NLMISC::IStream::_ThrowOnOlder</a> = false<code> [static, private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06461.html#l00066">66</a> of file <a class="el" href="a06461.html">stream.cpp</a>.
+<p>
+Referenced by <a class="el" href="a06461.html#l00078">getVersionException()</a>, <a class="el" href="a06461.html#l00266">serialVersion()</a>, and <a class="el" href="a06461.html#l00071">setVersionException()</a>. </td>
+ </tr>
+</table>
+<a class="anchor" name="NLMISC_1_1IStreamr3" doxytag="NLMISC::IStream::_XML" ></a><p>
+<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
+ <tr>
+ <td class="mdRow">
+ <table cellpadding="0" cellspacing="0" border="0">
+ <tr>
+ <td class="md" nowrap valign="top"> bool <a class="el" href="a02270.html#NLMISC_1_1IStreamr3">NLMISC::IStream::_XML</a><code> [private]</code>
+ </table>
+ </td>
+ </tr>
+</table>
+<table cellspacing=5 cellpadding=0 border=0>
+ <tr>
+ <td>
+ &nbsp;
+ </td>
+ <td>
+
+<p>
+
+<p>
+Definition at line <a class="el" href="a06462.html#l01443">1443</a> of file <a class="el" href="a06462.html">stream.h</a>.
+<p>
+Referenced by <a class="el" href="a06461.html#l00089">IStream()</a>, <a class="el" href="a06462.html#l00221">isXML()</a>, <a class="el" href="a06461.html#l00427">setXMLMode()</a>, <a class="el" href="a06462.html#l00794">xmlBreakLine()</a>, <a class="el" href="a06462.html#l00811">xmlComment()</a>, <a class="el" href="a06462.html#l00759">xmlPop()</a>, <a class="el" href="a06462.html#l00701">xmlPush()</a>, <a class="el" href="a06462.html#l00725">xmlPushBegin()</a>, <a class="el" href="a06462.html#l00742">xmlPushEnd()</a>, and <a class="el" href="a06462.html#l00777">xmlSetAttrib()</a>. </td>
+ </tr>
+</table>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="a06462.html">stream.h</a><li><a class="el" href="a06461.html">stream.cpp</a><li><a class="el" href="a06463.html">stream_inline.h</a></ul>
+<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 13:48:09 2004 for NeL by
+<a href="http://www.doxygen.org/index.html">
+<img src="doxygen.png" alt="doxygen" align="middle" border=0 >
+</a>1.3.6 </small></address>
+</body>
+</html>