00001 #ifndef __D3D8VIDEOMODE_H__ 00002 #define __D3D8VIDEOMODE_H__ 00003 00004 #include "OgreD3D8Prerequisites.h" 00005 00006 #include "OgreString.h" 00007 #include "OgreLogManager.h" 00008 00009 #include "OgreNoMemoryMacros.h" 00010 #include <d3d8.h> 00011 #include "OgreMemoryMacros.h" 00012 00013 namespace Ogre { 00014 00015 static int modeCount = 0; 00016 00017 class D3D8VideoMode 00018 { 00019 private: 00020 D3DDISPLAYMODE mDisplayMode; 00021 00022 int modeNumber; 00023 00024 public: 00025 D3D8VideoMode() { modeNumber = ++modeCount; ZeroMemory( &mDisplayMode, sizeof(D3DDISPLAYMODE) ); } 00026 D3D8VideoMode( const D3D8VideoMode &ob ) { modeNumber = ++modeCount; mDisplayMode = ob.mDisplayMode; } 00027 D3D8VideoMode( D3DDISPLAYMODE d3ddm ) { modeNumber = ++modeCount; mDisplayMode = d3ddm; } 00028 ~D3D8VideoMode() 00029 { 00030 modeCount--; 00031 //LogManager::getSingleton().logMessage( LML_CRITICAL, "Mode %d removed from memory", modeNumber ); 00032 } 00033 00034 unsigned int getWidth() const { return mDisplayMode.Width; } 00035 unsigned int getHeight() const { return mDisplayMode.Height; } 00036 D3DFORMAT getFormat() const { return mDisplayMode.Format; } 00037 unsigned int getRefreshRate() const { return mDisplayMode.RefreshRate; } 00038 unsigned int getColourDepth() const; 00039 D3DDISPLAYMODE getDisplayMode() const { return mDisplayMode; } 00040 00041 void increaseRefreshRate(unsigned int rr) { mDisplayMode.RefreshRate = rr; } 00042 00043 String getDescription(); 00044 }; 00045 00046 } 00047 00048 #endif
Copyright © 2002 by The OGRE Team