/* ----------------------------------------------------------------------------- GSFramework Copyright 2001-2013 Emmanuel Julien. All Rights Reserved. ------------------------------------------------------------------------------*/ #ifndef __NVIDEOMODE__ #define __NVIDEOMODE__ #include "ntypes.h" /*! @short Video mode database. @author Emmanuel Julien (ejulien@gsworks.fr) */ namespace nVideoMode { struct Mode { const char *name; uint width, height; uchar bpp; bool pc_mode; }; enum AspectRatio { AR_4_3, AR_16_9, AR_16_10, AR_Unknown }; enum Name { CGA, // 320x200 QVGA, // 320x240 WQVGA, // 480x272 VGA, // 640x480 SVGA, // 800x600 XGA, // 1024x768 XGAPlus, // 1152x864 HD, // 1366x768 WXGA_922K, // 1280x720 WXGA_1024K, // 1280x800 HDPlus, // 1600x900 SXGA, // 1280x1024 WXGAPlus, // 1440x900 UXGA, // 1600x1200 WSXGAPlus, // 1680x1050 FullHD, // 1920x1080 WUXGA, // 1920x1200 QXGA, // 2048x1536 QWXGA, // 2048x1152 WQHD, // 2560x1440 WQXGA, // 2560x1600 NameLast }; extern Mode mode_desc[NameLast]; /// Get video mode aspect ratio. AspectRatio GetModeAspectRatio(const Mode &); /// Get video mode from resolution. Mode *GetMode(uint w, uint h); }; #endif // __NVIDEOMODE__