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