source: OGRE/trunk/ogrenew/Docs/api/html/OgreQuake3Level_8h-source.html @ 657

Revision 657, 16.0 KB checked in by mattausch, 18 years ago (diff)

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>OgreQuake3Level.h Source File - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4<link type="text/css" rel="stylesheet" href="style.css">
5</head>
6
7<body>
8<!-- Generated by Doxygen 1.3.6 -->
9<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>
10<h1>OgreQuake3Level.h</h1><a href="OgreQuake3Level_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">/*</span>
1100002 <span class="comment">-----------------------------------------------------------------------------</span>
1200003 <span class="comment">This source file is part of OGRE</span>
1300004 <span class="comment">    (Object-oriented Graphics Rendering Engine)</span>
1400005 <span class="comment">For the latest info, see http://www.ogre3d.org/</span>
1500006 <span class="comment"></span>
1600007 <span class="comment">Copyright (c) 2000-2005 The OGRE Team</span>
1700008 <span class="comment">Also see acknowledgements in Readme.html</span>
1800009 <span class="comment"></span>
1900010 <span class="comment">This program is free software; you can redistribute it and/or modify it under</span>
2000011 <span class="comment">the terms of the GNU Lesser General Public License as published by the Free Software</span>
2100012 <span class="comment">Foundation; either version 2 of the License, or (at your option) any later</span>
2200013 <span class="comment">version.</span>
2300014 <span class="comment"></span>
2400015 <span class="comment">This program is distributed in the hope that it will be useful, but WITHOUT</span>
2500016 <span class="comment">ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span>
2600017 <span class="comment">FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.</span>
2700018 <span class="comment"></span>
2800019 <span class="comment">You should have received a copy of the GNU Lesser General Public License along with</span>
2900020 <span class="comment">this program; if not, write to the Free Software Foundation, Inc., 59 Temple</span>
3000021 <span class="comment">Place - Suite 330, Boston, MA 02111-1307, USA, or go to</span>
3100022 <span class="comment">http://www.gnu.org/copyleft/lesser.txt.</span>
3200023 <span class="comment">-----------------------------------------------------------------------------</span>
3300024 <span class="comment">*/</span>
3400025 <span class="preprocessor">#ifndef __Quake3Level_H__</span>
3500026 <span class="preprocessor"></span><span class="preprocessor">#define __Quake3Level_H__</span>
3600027 <span class="preprocessor"></span>
3700028 <span class="preprocessor">#include "<a class="code" href="OgreBspPrerequisites_8h.html">OgreBspPrerequisites.h</a>"</span>
3800029 <span class="preprocessor">#include "<a class="code" href="OgreQuake3Types_8h.html">OgreQuake3Types.h</a>"</span>
3900030 <span class="preprocessor">#include "<a class="code" href="OgreDataStream_8h.html">OgreDataStream.h</a>"</span>
4000031
4100032
4200033 <span class="keyword">namespace </span>Ogre {
4300034
44<a name="l00059"></a><a class="code" href="classOgre_1_1Quake3Level.html">00059</a>     <span class="keyword">class </span><a class="code" href="classOgre_1_1Quake3Level.html">Quake3Level</a>
4500060     {
4600061     <span class="keyword">public</span>:
4700062         <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela0">Quake3Level</a>();
4800063
4900069         <span class="keywordtype">void</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela1">loadHeaderFromStream</a>(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; inStream);
5000070
5100082         <span class="keywordtype">void</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela2">loadFromStream</a>(<a class="code" href="classOgre_1_1SharedPtr.html">DataStreamPtr</a>&amp; inStream);
5200083
5300084         <span class="comment">/* Extracts the embedded lightmap texture data and loads them as textures.</span>
5400085 <span class="comment">           Calling this method makes the lightmap texture data embedded in</span>
5500086 <span class="comment">           the .bsp file available to the renderer. Lightmaps are extracted</span>
5600087 <span class="comment">           and loaded as Texture objects (subclass specific to RenderSystem</span>
5700088 <span class="comment">           subclass) and are named "@lightmap1", "@lightmap2" etc.</span>
5800089 <span class="comment">        */</span>
5900090         <span class="keywordtype">void</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela3">extractLightmaps</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
6000091
6100093         <span class="keywordtype">void</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela4">initialise</a>(<span class="keywordtype">bool</span> headerOnly = <span class="keyword">false</span>);
6200095         <span class="keywordtype">void</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela5">initialiseCounts</a>(<span class="keywordtype">void</span>);
6300097         <span class="keywordtype">void</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela6">initialisePointers</a>(<span class="keywordtype">void</span>);
6400098
6500100         <span class="keywordtype">void</span>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela7">getLump</a>(<span class="keywordtype">int</span> lumpType);
6600101         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela8">getLumpSize</a>(<span class="keywordtype">int</span> lumpType);
6700102
6800104         <span class="keywordtype">void</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levela9">dumpContents</a>(<span class="keywordtype">void</span>);
6900105
7000106         <span class="comment">// Internal storage</span>
7100107         <span class="comment">// This is ALL temporary. Don't rely on it being static</span>
72<a name="l00108"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo0">00108</a>         <a class="code" href="classOgre_1_1SharedPtr.html">MemoryDataStreamPtr</a> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo0">mChunk</a>;
7300109
7400110         <span class="comment">// NB no brushes, fog or local lightvolumes yet</span>
75<a name="l00111"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo1">00111</a>         <a class="code" href="structbsp__header__t.html">bsp_header_t</a>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo1">mHeader</a>;
76<a name="l00112"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo2">00112</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo2">mLumpStart</a>;
7700113
78<a name="l00114"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo3">00114</a>         <span class="keywordtype">int</span>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo3">mElements</a>; <span class="comment">// vertex indexes for faces</span>
79<a name="l00115"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo4">00115</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo4">mNumElements</a>;
8000116
81<a name="l00117"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo5">00117</a>         <span class="keywordtype">void</span>* mEntities;
82<a name="l00118"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo6">00118</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo6">mNumEntities</a>;
8300119
84<a name="l00120"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo7">00120</a>         <a class="code" href="structbsp__model__t.html">bsp_model_t</a>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo7">mModels</a>;
85<a name="l00121"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo8">00121</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo8">mNumModels</a>;
8600122
87<a name="l00123"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo9">00123</a>         <a class="code" href="structbsp__node__t.html">bsp_node_t</a>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo9">mNodes</a>;
88<a name="l00124"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo10">00124</a>         <span class="keywordtype">int</span> mNumNodes;
8900125
90<a name="l00126"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo11">00126</a>         <a class="code" href="structbsp__leaf__t.html">bsp_leaf_t</a>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo11">mLeaves</a>;
91<a name="l00127"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo12">00127</a>         <span class="keywordtype">int</span> mNumLeaves;
9200128
93<a name="l00129"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo13">00129</a>         <span class="keywordtype">int</span>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo13">mLeafFaces</a>;     <span class="comment">// Indexes to face groups by leaf</span>
94<a name="l00130"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo14">00130</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo14">mNumLeafFaces</a>;
9500131
96<a name="l00132"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo15">00132</a>         <a class="code" href="structbsp__plane__t.html">bsp_plane_t</a>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo15">mPlanes</a>;
97<a name="l00133"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo16">00133</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo16">mNumPlanes</a>;
9800134
99<a name="l00135"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo17">00135</a>         <a class="code" href="structbsp__face__t.html">bsp_face_t</a>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo17">mFaces</a>;      <span class="comment">// Groups of faces</span>
100<a name="l00136"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo18">00136</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo18">mNumFaces</a>;
10100137
102<a name="l00138"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo19">00138</a>         <a class="code" href="structbsp__vertex__t.html">bsp_vertex_t</a>* mVertices;
103<a name="l00139"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo20">00139</a>         <span class="keywordtype">int</span> mNumVertices;
10400140
105<a name="l00141"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo21">00141</a>         <a class="code" href="structbsp__shader__t.html">bsp_shader_t</a>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo21">mShaders</a>;
106<a name="l00142"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo22">00142</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo22">mNumShaders</a>;
10700143
108<a name="l00144"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo23">00144</a>         <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo23">mLightmaps</a>;
109<a name="l00145"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo24">00145</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo24">mNumLightmaps</a>;
11000146
111<a name="l00147"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo25">00147</a>         <a class="code" href="structbsp__vis__t.html">bsp_vis_t</a>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo25">mVis</a>;
11200148
113<a name="l00149"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo26">00149</a>         <a class="code" href="structbsp__brush__t.html">bsp_brush_t</a>* mBrushes;
114<a name="l00150"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo27">00150</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo27">mNumBrushes</a>;
11500151
116<a name="l00152"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo28">00152</a>         <a class="code" href="structbsp__brushside__t.html">bsp_brushside_t</a>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo28">mBrushSides</a>;
117<a name="l00153"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo29">00153</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo29">mNumBrushSides</a>;
11800154
119<a name="l00155"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo30">00155</a>         <span class="keywordtype">int</span>* <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo30">mLeafBrushes</a>;      <span class="comment">// Groups of indexes to brushes by leaf</span>
120<a name="l00156"></a><a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo31">00156</a>         <span class="keywordtype">int</span> <a class="code" href="classOgre_1_1Quake3Level.html#Ogre_1_1Quake3Levelo31">mNumLeafBrushes</a>;
12100157
12200158
12300159
12400160     };
12500161 }
12600162
12700163
12800164 <span class="preprocessor">#endif</span>
129</pre></div><hr>
130<p>
131Copyright &copy; 2000-2005 by The OGRE Team<br />
132<!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>
133This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>.<br/>
134                <!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
135                <Work rdf:about="">
136                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
137        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
138                </Work>
139                <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
140
141Last modified Sun Feb 12 12:59:50 2006
142</p>
143</body>
144</html>
Note: See TracBrowser for help on using the repository browser.