00001 // Copyright (C) 2002-2012 Nikolaus Gebhardt 00002 // This file is part of the "Irrlicht Engine". 00003 // For conditions of distribution and use, see copyright notice in irrlicht.h 00004 00005 #ifndef __IRR_I_VIDEO_MODE_LIST_H_INCLUDED__ 00006 #define __IRR_I_VIDEO_MODE_LIST_H_INCLUDED__ 00007 00008 #include "IReferenceCounted.h" 00009 #include "dimension2d.h" 00010 00011 namespace irr 00012 { 00013 namespace video 00014 { 00015 00017 00023 class IVideoModeList : public virtual IReferenceCounted 00024 { 00025 public: 00026 00028 00029 virtual s32 getVideoModeCount() const = 0; 00030 00032 00034 virtual core::dimension2d<u32> getVideoModeResolution(s32 modeNumber) const = 0; 00035 00037 00041 virtual core::dimension2d<u32> getVideoModeResolution(const core::dimension2d<u32>& minSize, const core::dimension2d<u32>& maxSize) const = 0; 00042 00044 00046 virtual s32 getVideoModeDepth(s32 modeNumber) const = 0; 00047 00049 00050 virtual const core::dimension2d<u32>& getDesktopResolution() const = 0; 00051 00053 00054 virtual s32 getDesktopDepth() const = 0; 00055 }; 00056 00057 } // end namespace video 00058 } // end namespace irr 00059 00060 00061 #endif 00062