summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/windows/qwindowsopengltester.h
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-01-12 15:59:36 +0100
committerFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>2015-01-15 23:25:48 +0100
commit97a82f62c46c272fe3ef1cd9d5c2214b6a7626af (patch)
treeb8f74ccbf8bf053d44f8f5fe5533f97effca0009 /src/plugins/platforms/windows/qwindowsopengltester.h
parent0fa092cbae1593ca73577ecf9ec71283ae3f2498 (diff)
Windows: Add infrastructure to be able to a GL renderer based on GPU.
Introduce flags for the renderer type and move code to qwindowsopengltester. Introduce QWindowsOpenGLTester::supportedGlesRenderers() where type-dependent checking can be added. Change-Id: I4bbffaf861cb0fdbea0919e081e3626fb5a872de Task-number: QTBUG-43263 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Diffstat (limited to 'src/plugins/platforms/windows/qwindowsopengltester.h')
-rw-r--r--src/plugins/platforms/windows/qwindowsopengltester.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/plugins/platforms/windows/qwindowsopengltester.h b/src/plugins/platforms/windows/qwindowsopengltester.h
index 98b707dcd2..6238eea4b0 100644
--- a/src/plugins/platforms/windows/qwindowsopengltester.h
+++ b/src/plugins/platforms/windows/qwindowsopengltester.h
@@ -37,6 +37,7 @@
#include <qtwindowsglobal.h>
#include <QtCore/QByteArray>
+#include <QtCore/QFlags>
QT_BEGIN_NAMESPACE
@@ -92,9 +93,29 @@ QDebug operator<<(QDebug d, const GpuDescription &gd);
class QWindowsOpenGLTester
{
public:
+ enum Renderer {
+ InvalidRenderer = 0x0000,
+ DesktopGl = 0x0001,
+ AngleRendererD3d11 = 0x0002,
+ AngleRendererD3d9 = 0x0004,
+ AngleRendererD3d11Warp = 0x0008, // "Windows Advanced Rasterization Platform"
+ AngleBackendMask = AngleRendererD3d11 | AngleRendererD3d9 | AngleRendererD3d11Warp,
+ Gles = 0x0010, // ANGLE/unspecified or Generic GLES for Windows CE.
+ GlesMask = Gles | AngleBackendMask,
+ SoftwareRasterizer = 0x0020
+ };
+ Q_DECLARE_FLAGS(Renderers, Renderer)
+
+ static Renderer requestedGlesRenderer();
+ static Renderer requestedRenderer();
+ static Renderers supportedGlesRenderers();
+ static Renderers supportedRenderers();
+
static bool testDesktopGL();
};
+Q_DECLARE_OPERATORS_FOR_FLAGS(QWindowsOpenGLTester::Renderers)
+
QT_END_NAMESPACE
#endif // QWINDOWSOPENGLTESTER_H