diff engine/core/video/devicecaps.cpp @ 637:3822b30fd98c

* Added the ability to query some more details from the video device including the total video memory available.
author prock@33b003aa-7bff-0310-803a-e67f0ece8222
date Wed, 06 Oct 2010 21:37:46 +0000
parents f7863bfa92cd
children 685d250f2c2d
line wrap: on
line diff
--- a/engine/core/video/devicecaps.cpp	Wed Oct 06 20:54:28 2010 +0000
+++ b/engine/core/video/devicecaps.cpp	Wed Oct 06 21:37:46 2010 +0000
@@ -49,7 +49,17 @@
 		m_SDLFlags = rhs.getSDLFlags();
 	}
 
-	DeviceCaps::DeviceCaps() {
+	DeviceCaps::DeviceCaps() :
+		m_hwAvailable(false),
+		m_wmAvailable(false),
+		m_hwBlitAccel(false),
+		m_hwCCBlitAccel(false),
+		m_hwToHwAlphaBlitAccel(false),
+		m_swToHwBlitAccel(false),
+		m_swToHwCCBlistAccel(false),
+		m_swToHwAlphaBlitAccel(false),
+		m_BlitFillAccel(false),
+		m_videoMem(0) {
 	}
 
 
@@ -119,6 +129,18 @@
 			m_driverName = "Unknown";
 		}
 
+		const SDL_VideoInfo* vInfo = SDL_GetVideoInfo();
+
+		m_hwAvailable = vInfo->hw_available;
+		m_wmAvailable = vInfo->wm_available;
+		m_hwBlitAccel = vInfo->blit_hw;
+		m_hwCCBlitAccel = vInfo->blit_hw_CC;
+		m_hwToHwAlphaBlitAccel = vInfo->blit_hw_A;
+		m_swToHwBlitAccel = vInfo->blit_sw;
+		m_swToHwCCBlistAccel = vInfo->blit_sw_CC;
+		m_swToHwAlphaBlitAccel = vInfo->blit_sw_A;
+		m_BlitFillAccel = vInfo->blit_fill;
+		m_videoMem = vInfo->video_mem;
 	}
 
 } //FIFE