00001 /*------------------------------------------------------------------------- 00002 This source file is a part of OGRE 00003 (Object-oriented Graphics Rendering Engine) 00004 00005 For the latest info, see http://www.ogre3d.org/ 00006 00007 Copyright (c) 2000-2005 The OGRE Team 00008 Also see acknowledgements in Readme.html 00009 00010 This library is free software; you can redistribute it and/or modify it 00011 under the terms of the GNU Lesser General Public License (LGPL) as 00012 published by the Free Software Foundation; either version 2.1 of the 00013 License, or (at your option) any later version. 00014 00015 This library is distributed in the hope that it will be useful, but 00016 WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 00017 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 00018 License for more details. 00019 00020 You should have received a copy of the GNU Lesser General Public License 00021 along with this library; if not, write to the Free Software Foundation, 00022 Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA or go to 00023 http://www.gnu.org/copyleft/lesser.txt 00024 -------------------------------------------------------------------------*/ 00025 #ifndef __RenderWindow_H__ 00026 #define __RenderWindow_H__ 00027 00028 #include "OgrePrerequisites.h" 00029 00030 #include "OgreRenderTarget.h" 00031 00032 namespace Ogre 00033 { 00055 class _OgreExport RenderWindow : public RenderTarget 00056 { 00057 00058 public: 00061 RenderWindow(); 00062 00086 virtual void create(const String& name, unsigned int width, unsigned int height, 00087 bool fullScreen, const NameValuePairList *miscParams) = 0; 00088 00091 virtual void destroy(void) = 0; 00092 00095 virtual void resize(unsigned int width, unsigned int height) = 0; 00096 00099 virtual void reposition(int left, int top) = 0; 00100 00103 virtual bool isClosed(void) const = 0; 00104 00111 virtual bool isPrimary(void) const; 00112 00133 virtual void swapBuffers(bool waitForVSync = true) = 0; 00134 00141 virtual void update(void); 00142 00145 virtual bool isFullScreen(void) const; 00146 00150 virtual void getMetrics(unsigned int& width, unsigned int& height, unsigned int& colourDepth, 00151 int& left, int& top); 00152 00153 protected: 00154 bool mIsFullScreen; 00155 bool mIsPrimary; 00156 int mLeft; 00157 int mTop; 00158 00162 void _setPrimary() { mIsPrimary = true; } 00163 00164 friend class Root; 00165 }; 00166 00173 typedef void (*DLL_CREATERENDERWINDOW)(RenderWindow** ppWindow); 00174 00175 } // Namespace 00176 #endif
Copyright © 2000-2005 by The OGRE Team
Last modified Wed Feb 23 00:19:12 2005