Sophie

Sophie

distrib > Mandriva > 10.2 > i586 > media > contrib > by-pkgid > 04e5d8c10ae76748689b4e7f48e0fa33 > files > 824

libogre5-devel-1.0.0-1mdk.i586.rpm

<html>
<head>
<title>OgreSerializer.h Source File - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
<link type="text/css" rel="stylesheet" href="style.css">
</head>

<body>
<!-- Generated by Doxygen 1.3.6 -->
<div class="qindex"><a class="qindex" href="index.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">Class&nbsp;List</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">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>OgreSerializer.h</h1><a href="OgreSerializer_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/*</span>
00002 <span class="comment">-----------------------------------------------------------------------------</span>
00003 <span class="comment">This source file is part of OGRE</span>
00004 <span class="comment">    (Object-oriented Graphics Rendering Engine)</span>
00005 <span class="comment">For the latest info, see http://www.ogre3d.org/</span>
00006 <span class="comment"></span>
00007 <span class="comment">Copyright (c) 2000-2005 The OGRE Team</span>
00008 <span class="comment">Also see acknowledgements in Readme.html</span>
00009 <span class="comment"></span>
00010 <span class="comment">This program is free software; you can redistribute it and/or modify it under</span>
00011 <span class="comment">the terms of the GNU Lesser General Public License as published by the Free Software</span>
00012 <span class="comment">Foundation; either version 2 of the License, or (at your option) any later</span>
00013 <span class="comment">version.</span>
00014 <span class="comment"></span>
00015 <span class="comment">This program is distributed in the hope that it will be useful, but WITHOUT</span>
00016 <span class="comment">ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span>
00017 <span class="comment">FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.</span>
00018 <span class="comment"></span>
00019 <span class="comment">You should have received a copy of the GNU Lesser General Public License along with</span>
00020 <span class="comment">this program; if not, write to the Free Software Foundation, Inc., 59 Temple</span>
00021 <span class="comment">Place - Suite 330, Boston, MA 02111-1307, USA, or go to</span>
00022 <span class="comment">http://www.gnu.org/copyleft/lesser.txt.</span>
00023 <span class="comment">-----------------------------------------------------------------------------</span>
00024 <span class="comment">*/</span>
00025 
00026 <span class="preprocessor">#ifndef __Serializer_H__</span>
00027 <span class="preprocessor"></span><span class="preprocessor">#define __Serializer_H__</span>
00028 <span class="preprocessor"></span>
00029 <span class="preprocessor">#include "<a class="code" href="OgrePrerequisites_8h.html">OgrePrerequisites.h</a>"</span>
00030 <span class="preprocessor">#include "<a class="code" href="OgreString_8h.html">OgreString.h</a>"</span>
00031 <span class="preprocessor">#include "<a class="code" href="OgreDataStream_8h.html">OgreDataStream.h</a>"</span>
00032 
00033 <span class="keyword">namespace </span>Ogre {
00034 
<a name="l00040"></a><a class="code" href="classOgre_1_1Serializer.html">00040</a>     <span class="keyword">class </span><a class="code" href="OgrePlatform_8h.html#a13">_OgreExport</a> Serializer
00041     {
00042     <span class="keyword">public</span>:
00043         Serializer();
00044         <span class="keyword">virtual</span> ~Serializer();
00045 
00046 
00047     <span class="keyword">protected</span>:
00048 
<a name="l00049"></a><a class="code" href="classOgre_1_1Serializer.html#Ogre_1_1SkeletonSerializerp0">00049</a>         <a class="code" href="namespaceOgre.html#a412">uint32</a> mCurrentstreamLen;
<a name="l00050"></a><a class="code" href="classOgre_1_1Serializer.html#Ogre_1_1SkeletonSerializerp1">00050</a>         FILE* mpfFile;
<a name="l00051"></a><a class="code" href="classOgre_1_1Serializer.html#Ogre_1_1SkeletonSerializerp2">00051</a>         <a class="code" href="namespaceOgre.html#a426">String</a> mVersion;
00052 
00053         <span class="comment">// Internal methods</span>
00054         <span class="keyword">virtual</span> <span class="keywordtype">void</span> writeFileHeader(<span class="keywordtype">void</span>);
00055         <span class="keyword">virtual</span> <span class="keywordtype">void</span> writeChunkHeader(<a class="code" href="namespaceOgre.html#a413">uint16</a> <span class="keywordtype">id</span>, <a class="code" href="namespaceOgre.html#a412">uint32</a> size);
00056         
00057         <span class="keywordtype">void</span> writeFloats(<span class="keyword">const</span> <span class="keywordtype">float</span>* <span class="keyword">const</span> pfloat, size_t count);
00058         <span class="keywordtype">void</span> writeFloats(<span class="keyword">const</span> <span class="keywordtype">double</span>* <span class="keyword">const</span> pfloat, size_t count);
00059         <span class="keywordtype">void</span> writeShorts(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a413">uint16</a>* <span class="keyword">const</span> pShort, size_t count);
00060         <span class="keywordtype">void</span> writeInts(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a412">uint32</a>* <span class="keyword">const</span> pInt, size_t count); 
00061         <span class="keywordtype">void</span> writeBools(<span class="keyword">const</span> <span class="keywordtype">bool</span>* <span class="keyword">const</span> pLong, size_t count);
00062         <span class="keywordtype">void</span> writeObject(<span class="keyword">const</span> <a class="code" href="classOgre_1_1Vector3.html">Vector3</a>&amp; vec);
00063         <span class="keywordtype">void</span> writeObject(<span class="keyword">const</span> <a class="code" href="classOgre_1_1Quaternion.html">Quaternion</a>&amp; q);
00064         
00065         <span class="keywordtype">void</span> writeString(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; string);
00066         <span class="keywordtype">void</span> writeData(<span class="keyword">const</span> <span class="keywordtype">void</span>* <span class="keyword">const</span> buf, size_t size, size_t count);
00067         
00068         <span class="keyword">virtual</span> <span class="keywordtype">void</span> readFileHeader(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream);
00069         <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">short</span> readChunk(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream);
00070         
00071         <span class="keywordtype">void</span> readBools(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream, <span class="keywordtype">bool</span>* pDest, size_t count);
00072         <span class="keywordtype">void</span> readFloats(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream, <span class="keywordtype">float</span>* pDest, size_t count);
00073         <span class="keywordtype">void</span> readFloats(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream, <span class="keywordtype">double</span>* pDest, size_t count);
00074         <span class="keywordtype">void</span> readShorts(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream, <a class="code" href="namespaceOgre.html#a413">uint16</a>* pDest, size_t count);
00075         <span class="keywordtype">void</span> readInts(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream, <a class="code" href="namespaceOgre.html#a412">uint32</a>* pDest, size_t count);
00076         <span class="keywordtype">void</span> readObject(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream, <a class="code" href="classOgre_1_1Vector3.html">Vector3</a>&amp; pDest);
00077         <span class="keywordtype">void</span> readObject(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream, <a class="code" href="classOgre_1_1Quaternion.html">Quaternion</a>&amp; pDest);
00078 
00079         <a class="code" href="namespaceOgre.html#a426">String</a> readString(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream);
00080         <a class="code" href="namespaceOgre.html#a426">String</a> readString(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; stream, size_t numChars);
00081         
00082         <span class="keyword">virtual</span> <span class="keywordtype">void</span> flipToLittleEndian(<span class="keywordtype">void</span>* pData, size_t size, size_t count = 1);
00083         <span class="keyword">virtual</span> <span class="keywordtype">void</span> flipFromLittleEndian(<span class="keywordtype">void</span>* pData, size_t size, size_t count = 1);
00084         
00085         <span class="keyword">virtual</span> <span class="keywordtype">void</span> flipEndian(<span class="keywordtype">void</span> * pData, size_t size, size_t count);
00086         <span class="keyword">virtual</span> <span class="keywordtype">void</span> flipEndian(<span class="keywordtype">void</span> * pData, size_t size);
00087     };
00088 
00089 }
00090 
00091 
00092 <span class="preprocessor">#endif</span>
</pre></div><p>
Copyright &copy; 2000-2005 by The OGRE Team<br />
Last modified Wed Feb 23 00:19:13 2005
</p>
</body>
</html>