13d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa#ifndef _TCUX11VULKANPLATFORM_HPP 23d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa#define _TCUX11VULKANPLATFORM_HPP 33d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa/*------------------------------------------------------------------------- 43d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * drawElements Quality Program Tester Core 53d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * ---------------------------------------- 63d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * 73d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * Copyright (c) 2016 The Khronos Group Inc. 83d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * 93d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * Licensed under the Apache License, Version 2.0 (the "License"); 103d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * you may not use this file except in compliance with the License. 113d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * You may obtain a copy of the License at 123d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * 133d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * http://www.apache.org/licenses/LICENSE-2.0 143d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * 153d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * Unless required by applicable law or agreed to in writing, software 163d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * distributed under the License is distributed on an "AS IS" BASIS, 173d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 183d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * See the License for the specific language governing permissions and 193d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * limitations under the License. 203d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * 213d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa *//*! 223d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * \file 233d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa * \brief X11Vulkan Platform. 243d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa *//*--------------------------------------------------------------------*/ 253d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa 263d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa#include "vkWsiPlatform.hpp" 273d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa#include "vkPlatform.hpp" 283d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa#include "tcuX11.hpp" 293d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa 303d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwanamespace tcu 313d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa{ 323d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwanamespace x11 333d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa{ 343d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa 353d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwaclass VulkanPlatform : public vk::Platform 363d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa{ 373d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwapublic: 383d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa VulkanPlatform (EventState& eventState); 393d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa vk::wsi::Display* createWsiDisplay (vk::wsi::Type wsiType) const; 403d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa vk::Library* createLibrary (void) const; 413d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa void describePlatform (std::ostream& dst) const; 423d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa void getMemoryLimits (vk::PlatformMemoryLimits& limits) const; 433d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa 443d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwaprivate : 453d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa EventState& m_eventState; 463d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa}; 473d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa 483d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa 493d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa} // x11 503d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa} // tcu 513d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa 523d6f22c833396c0c0b5806868f3e11f8ea05de3aArkadiusz Sarwa#endif // _TCUX11VULKANPLATFORM_HPP 53