# OgreWin32GLSupport.h

Go to the documentation of this file.

    00001 #ifndef __OgreWin32GLSupport_H__
    00002 #define __OgreWin32GLSupport_H__
    00003
    00004 #include "OgreWin32Prerequisites.h"
    00005 #include "OgreGLSupport.h"
    00006 #include "OgreGLRenderSystem.h"
    00007
    00008 namespace Ogre
    00009 {
    00010
    00011     class Win32GLSupport : public GLSupport
    00012     {
    00013     public:
    00014         Win32GLSupport();
    00020         void addConfig();
    00021
    00022         void setConfigOption(const String &name, const String &value);
    00023
    00027         String validateConfig();
    00028
    00029         virtual RenderWindow* createWindow(bool autoCreateWindow, GLRenderSystem* renderSystem, const String& windowTitle = "OGRE Render Window");
    00030
    00032         virtual RenderWindow* newWindow(const String &name, unsigned int width, unsigned int height,
    00033             bool fullScreen, const NameValuePairList *miscParams = 0);
    00034
    00035
    00039         void start();
    00043         void stop();
    00044
    00048         void* getProcAddress(const String& procname);
    00049
    00053         virtual void initialiseExtensions();
    00054
    00055
    00056         bool selectPixelFormat(HDC hdc, int colourDepth, int multisample = 0);
    00057
    00058         virtual bool supportsPBuffers();
    00059         virtual GLPBuffer *createPBuffer(PixelComponentType format, size_t width, size_t height);
    00060     private:
    00061         // Allowed video modes
    00062         std::vector<DEVMODE> mDevModes;
    00063         Win32Window *mInitialWindow;
    00064         std::vector<int> mFSAALevels;
    00065         bool mHasPixelFormatARB;
    00066
    00067         void refreshConfig();
    00068         void initialiseWGL();
    00069         static LRESULT CALLBACK dummyWndProc(HWND hwnd, UINT umsg, WPARAM wp, LPARAM lp);
    00070     };
    00071
    00072 }
    00073
    00074 #endif

Copyright © 2000-2005 by The OGRE Team
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Sep 17 15:39:12 2006