From 892853214805f0e8fecb1240f5384b379c8c8096 Mon Sep 17 00:00:00 2001 From: Pyry Haulos Date: Thu, 23 Jul 2015 09:46:35 -0700 Subject: [PATCH] Add Vulkan support to null platform Builds done with -DDEQP_TARGET=null now use dummy Vulkan implementation (vkNullDriver.cpp) to provide Vulkan support. Change-Id: Icdd73a2e7352767e2cb1b2ba73a98d6c2441b8a5 --- framework/platform/null/tcuNullPlatform.cpp | 6 ++++++ framework/platform/null/tcuNullPlatform.hpp | 16 +++++++++++----- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/framework/platform/null/tcuNullPlatform.cpp b/framework/platform/null/tcuNullPlatform.cpp index ea790e5..e0721ec 100644 --- a/framework/platform/null/tcuNullPlatform.cpp +++ b/framework/platform/null/tcuNullPlatform.cpp @@ -26,6 +26,7 @@ #include "tcuNullRenderContext.hpp" #include "egluNativeDisplay.hpp" #include "eglwLibrary.hpp" +#include "vkNullDriver.hpp" namespace tcu { @@ -74,6 +75,11 @@ Platform::~Platform (void) { } +vk::Library* Platform::createLibrary (void) const +{ + return vk::createNullDriver(); +} + } // null } // tcu diff --git a/framework/platform/null/tcuNullPlatform.hpp b/framework/platform/null/tcuNullPlatform.hpp index 81ff514..612edf2 100644 --- a/framework/platform/null/tcuNullPlatform.hpp +++ b/framework/platform/null/tcuNullPlatform.hpp @@ -27,20 +27,26 @@ #include "tcuPlatform.hpp" #include "gluPlatform.hpp" #include "egluPlatform.hpp" +#include "vkPlatform.hpp" namespace tcu { namespace null { -class Platform : public tcu::Platform, private glu::Platform, private eglu::Platform +class Platform : public tcu::Platform, private glu::Platform, private eglu::Platform, private vk::Platform { public: - Platform (void); - virtual ~Platform (void); + Platform (void); + virtual ~Platform (void); + + virtual const glu::Platform& getGLPlatform (void) const { return static_cast(*this); } + virtual const eglu::Platform& getEGLPlatform (void) const { return static_cast(*this); } + virtual const vk::Platform& getVulkanPlatform (void) const { return static_cast(*this); } + +private: + virtual vk::Library* createLibrary (void) const; - virtual const glu::Platform& getGLPlatform (void) const { return static_cast(*this); } - virtual const eglu::Platform& getEGLPlatform (void) const { return static_cast(*this); } }; } // null -- 2.7.4