source: OGRE/trunk/ogrenew/Docs/api/html/OgreOverlay_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>OgreOverlay.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>OgreOverlay.h</h1><a href="OgreOverlay_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
3500026 <span class="preprocessor">#ifndef __Overlay_H__</span>
3600027 <span class="preprocessor"></span><span class="preprocessor">#define __Overlay_H__</span>
3700028 <span class="preprocessor"></span>
3800029 <span class="preprocessor">#include "<a class="code" href="OgrePrerequisites_8h.html">OgrePrerequisites.h</a>"</span>
3900030 <span class="preprocessor">#include "<a class="code" href="OgreSceneNode_8h.html">OgreSceneNode.h</a>"</span>
4000031 <span class="preprocessor">#include "<a class="code" href="OgreIteratorWrappers_8h.html">OgreIteratorWrappers.h</a>"</span>
4100032 <span class="preprocessor">#include "<a class="code" href="OgreMatrix4_8h.html">OgreMatrix4.h</a>"</span>
4200033
4300034 <span class="keyword">namespace </span>Ogre {
4400035
4500036
46<a name="l00061"></a><a class="code" href="classOgre_1_1Overlay.html">00061</a>     <span class="keyword">class </span><a class="code" href="OgrePlatform_8h.html#a16">_OgreExport</a> Overlay
4700062     {
4800063
4900064     <span class="keyword">public</span>:
50<a name="l00065"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayw0">00065</a>               <span class="keyword">typedef</span> std::list&lt;OverlayContainer*&gt; <a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayw0">OverlayContainerList</a>;
5100066     <span class="keyword">protected</span>:
52<a name="l00067"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp0">00067</a>         <a class="code" href="namespaceOgre.html#a426">String</a> mName;
53<a name="l00069"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp1">00069</a>         <a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a>* mRootNode;
5400070         <span class="comment">// 2D elements</span>
5500071         <span class="comment">// OverlayContainers, linked list for easy sorting by zorder later</span>
5600072         <span class="comment">// Not a map because sort can be saved since changes infrequent (unlike render queue)</span>
57<a name="l00073"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp2">00073</a>         <a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayw0">OverlayContainerList</a> m2DElements;
5800074
5900075         <span class="comment">// Degrees of rotation around center</span>
60<a name="l00076"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp3">00076</a>         <a class="code" href="classOgre_1_1Radian.html">Radian</a> mRotate;
6100077         <span class="comment">// Scroll values, offsets</span>
62<a name="l00078"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp5">00078</a>         <a class="code" href="namespaceOgre.html#a420">Real</a> mScrollX, mScrollY;
6300079         <span class="comment">// Scale values</span>
64<a name="l00080"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp7">00080</a>         <a class="code" href="namespaceOgre.html#a420">Real</a> mScaleX, mScaleY;
6500081
66<a name="l00082"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp8">00082</a>         <span class="keyword">mutable</span> <a class="code" href="classOgre_1_1Matrix4.html">Matrix4</a> mTransform;
67<a name="l00083"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp9">00083</a>         <span class="keyword">mutable</span> <span class="keywordtype">bool</span> mTransformOutOfDate;
68<a name="l00084"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp10">00084</a>         <span class="keywordtype">bool</span> mTransformUpdated;
69<a name="l00085"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp11">00085</a>         <a class="code" href="namespaceOgre.html#a424">ulong</a> mZOrder;
70<a name="l00086"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp12">00086</a>         <span class="keywordtype">bool</span> mVisible;
71<a name="l00087"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp13">00087</a>         <span class="keywordtype">bool</span> mInitialised;
72<a name="l00088"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayp14">00088</a>         <a class="code" href="namespaceOgre.html#a426">String</a> mOrigin;
7300090         <span class="keywordtype">void</span> updateTransform(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
7400092         <span class="keywordtype">void</span> initialise(<span class="keywordtype">void</span>);
7500093
7600094     <span class="keyword">public</span>:
7700096         Overlay(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; name);
7800097         <span class="keyword">virtual</span> ~Overlay();
7900098
8000099
8100100         <a class="code" href="classOgre_1_1OverlayContainer.html">OverlayContainer</a>* getChild(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; name);
8200101
8300103         <span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; getName(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
8400108         <span class="keywordtype">void</span> setZOrder(<a class="code" href="namespaceOgre.html#a422">ushort</a> zorder);
8500110         <a class="code" href="namespaceOgre.html#a422">ushort</a> getZOrder(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
8600111
8700113         <span class="keywordtype">bool</span> isVisible(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
8800114
89<a name="l00116"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlaya7">00116</a>         <span class="keywordtype">bool</span> isInitialised(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mInitialised; }
9000117
9100119         <span class="keywordtype">void</span> show(<span class="keywordtype">void</span>);
9200120
9300122         <span class="keywordtype">void</span> hide(<span class="keywordtype">void</span>);
9400123
9500134         <span class="keywordtype">void</span> add2D(<a class="code" href="classOgre_1_1OverlayContainer.html">OverlayContainer</a>* cont);
9600135
9700136
9800141         <span class="keywordtype">void</span> remove2D(<a class="code" href="classOgre_1_1OverlayContainer.html">OverlayContainer</a>* cont);
9900142
10000175         <span class="keywordtype">void</span> add3D(<a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a>* node);
10100176
10200178         <span class="keywordtype">void</span> remove3D(<a class="code" href="classOgre_1_1SceneNode.html">SceneNode</a>* node);
10300179
10400181         <span class="keywordtype">void</span> clear();
10500182
10600192         <span class="keywordtype">void</span> setScroll(<a class="code" href="namespaceOgre.html#a420">Real</a> x, <a class="code" href="namespaceOgre.html#a420">Real</a> y);
10700193
10800195         <a class="code" href="namespaceOgre.html#a420">Real</a> getScrollX(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
10900196
11000198         <a class="code" href="namespaceOgre.html#a420">Real</a> getScrollY(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
11100199
11200206         <span class="keywordtype">void</span> scroll(<a class="code" href="namespaceOgre.html#a420">Real</a> xoff, <a class="code" href="namespaceOgre.html#a420">Real</a> yoff);
11300207
11400209         <span class="keywordtype">void</span> setRotate(<span class="keyword">const</span> <a class="code" href="classOgre_1_1Radian.html">Radian</a>&amp; angle);
11500210 <span class="preprocessor">#ifndef OGRE_FORCE_ANGLE_TYPES</span>
11600211 <span class="preprocessor"></span>        <span class="keyword">inline</span> <span class="keywordtype">void</span> setRotate(<a class="code" href="namespaceOgre.html#a420">Real</a> degrees) {
11700212             setRotate ( <a class="code" href="classOgre_1_1Angle.html">Angle</a>(degrees) );
11800213         }
11900214 <span class="preprocessor">#endif//OGRE_FORCE_ANGLE_TYPES</span>
12000215 <span class="preprocessor"></span>
121<a name="l00217"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlaya20">00217</a>         <a class="code" href="classOgre_1_1Radian.html">Radian</a> getRotate(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mRotate; }
12200218
12300220         <span class="keywordtype">void</span> rotate(<span class="keyword">const</span> <a class="code" href="classOgre_1_1Radian.html">Radian</a>&amp; angle);
12400221 <span class="preprocessor">#ifndef OGRE_FORCE_ANGLE_TYPES</span>
12500222 <span class="preprocessor"></span>        <span class="keyword">inline</span> <span class="keywordtype">void</span> rotate(<a class="code" href="namespaceOgre.html#a420">Real</a> degrees) {
12600223             rotate ( <a class="code" href="classOgre_1_1Angle.html">Angle</a>(degrees) );
12700224         }
12800225 <span class="preprocessor">#endif//OGRE_FORCE_ANGLE_TYPES</span>
12900226 <span class="preprocessor"></span>
13000234         <span class="keywordtype">void</span> setScale(<a class="code" href="namespaceOgre.html#a420">Real</a> x, <a class="code" href="namespaceOgre.html#a420">Real</a> y);
13100235
13200237         <a class="code" href="namespaceOgre.html#a420">Real</a> getScaleX(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
13300238
13400240         <a class="code" href="namespaceOgre.html#a420">Real</a> getScaleY(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
13500241
13600243         <span class="keywordtype">void</span> _getWorldTransforms(Matrix4* xform) <span class="keyword">const</span>;
13700245         <span class="keyword">const</span> Quaternion&amp; getWorldOrientation(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
13800247         <span class="keyword">const</span> <a class="code" href="classOgre_1_1Vector3.html">Vector3</a>&amp; getWorldPosition(<span class="keywordtype">void</span>) <span class="keyword">const</span>;
13900248
14000250         <span class="keywordtype">void</span> _findVisibleObjects(<a class="code" href="classOgre_1_1Camera.html">Camera</a>* cam, RenderQueue* queue);
14100251
14200253         <span class="keyword">virtual</span> OverlayElement* findElementAt(<a class="code" href="namespaceOgre.html#a420">Real</a> x, <a class="code" href="namespaceOgre.html#a420">Real</a> y);
14300254
144<a name="l00259"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlayw1">00259</a>         <span class="keyword">typedef</span> <a class="code" href="classOgre_1_1VectorIterator.html">VectorIterator&lt;OverlayContainerList&gt;</a> <a class="code" href="classOgre_1_1VectorIterator.html">Overlay2DElementsIterator</a> ;
145<a name="l00260"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlaya30">00260</a>         <a class="code" href="classOgre_1_1VectorIterator.html">Overlay2DElementsIterator</a> get2DElementsIterator ()
14600261         {
14700262             <span class="keywordflow">return</span> <a class="code" href="classOgre_1_1VectorIterator.html">Overlay2DElementsIterator</a> (m2DElements.begin(), m2DElements.end());
14800263         }
149<a name="l00270"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlaya31">00270</a>         <span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; getOrigin(<span class="keywordtype">void</span>)<span class="keyword"> const </span>{ <span class="keywordflow">return</span> mOrigin; }
150<a name="l00272"></a><a class="code" href="classOgre_1_1Overlay.html#Ogre_1_1Overlaya32">00272</a>         <span class="keywordtype">void</span> _notifyOrigin(<span class="keyword">const</span> <a class="code" href="namespaceOgre.html#a426">String</a>&amp; origin) { mOrigin = origin; }
15100273
15200274
15300275     };
15400276
15500277 }
15600278
15700279
15800280 <span class="preprocessor">#endif</span>
15900281 <span class="preprocessor"></span>
160</pre></div><hr>
161<p>
162Copyright &copy; 2000-2005 by The OGRE Team<br />
163<!--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/>
164This 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/>
165                <!--/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#">
166                <Work rdf:about="">
167                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
168        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
169                </Work>
170                <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> -->
171
172Last modified Sun Feb 12 12:59:48 2006
173</p>
174</body>
175</html>
Note: See TracBrowser for help on using the repository browser.