Lines Matching defs:const
100 virtual tcu::TestStatus run (const vk::DeviceInterface& vkd,
106 const vk::wsi::WsiTriangleRenderer& renderer) = 0;
109 static vector<const char*> requiredDeviceExts (void) { return vector<const char*>(); }
112 virtual vector<const char*> getRequiredDeviceExts (void) = 0;
118 vector<const char*> getRequiredInstanceExtensions (vk::wsi::Type wsiType)
120 vector<const char*> extensions;
130 const vk::VkAllocationCallbacks* pAllocator = nullptr)
132 const auto version = context.getUsedApiVersion();
133 const auto requiredExtensions = getRequiredInstanceExtensions(wsiType);
136 for (const auto& extensionName : requiredExtensions)
147 const vector<vk::VkExtensionProperties> supportedExtensions;
149 const vk::InstanceDriver& vki;
151 InstanceHelper (Context& context, vk::wsi::Type wsiType, const vk::VkAllocationCallbacks* pAllocator = nullptr)
158 vector<const char*> getMandatoryDeviceExtensions ()
160 vector<const char*> mandatoryExtensions;
165 vk::Move<vk::VkDevice> createDeviceWithWsi (const vk::PlatformInterface& vkp,
167 const vk::InstanceInterface& vki,
169 const vector<const char*>& extraExtensions,
170 const deUint32 queueFamilyIndex,
172 const vk::VkAllocationCallbacks* pAllocator = nullptr)
174 const float queuePriorities[] = { 1.0f };
175 const vk::VkDeviceQueueCreateInfo queueInfos[] =
187 std::vector<const char*> extensions = extraExtensions;
188 const auto mandatoryExtensions = getMandatoryDeviceExtensions();
190 for (const auto& ext : mandatoryExtensions)
215 const vk::VkDeviceCreateInfo deviceParams =
234 const vk::VkPhysicalDevice physicalDevice;
235 const deUint32 queueFamilyIndex;
236 const vk::Unique<vk::VkDevice> device;
237 const vk::DeviceDriver vkd;
238 const vk::VkQueue queue;
241 const vk::InstanceInterface& vki,
243 const vector<vk::VkSurfaceKHR>& surfaces,
244 const vector<const char*>& extraExtensions,
245 const vk::VkAllocationCallbacks* pAllocator = nullptr)
263 const vk::InstanceInterface& vki,
266 const tcu::UVec2& desiredSize,
269 const vk::VkSurfaceCapabilitiesKHR capabilities = vk::wsi::getPhysicalDeviceSurfaceCapabilities(vki,
272 const vector<vk::VkSurfaceFormatKHR> formats = vk::wsi::getPhysicalDeviceSurfaceFormats(vki,
275 const vk::wsi::PlatformProperties& platformProperties = vk::wsi::getPlatformProperties(wsiType);
276 const vk::VkSurfaceTransformFlagBitsKHR transform = (capabilities.supportedTransforms & vk::VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR) ? vk::VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR : capabilities.currentTransform;
277 const vk::VkSwapchainCreateInfoKHR parameters =
307 vector<FenceSp> createFences (const vk::DeviceInterface& vkd,
308 const vk::VkDevice device,
319 vector<SemaphoreSp> createSemaphores (const vk::DeviceInterface& vkd,
320 const vk::VkDevice device,
331 vector<CommandBufferSp> allocateCommandBuffers (const vk::DeviceInterface& vkd,
332 const vk::VkDevice device,
333 const vk::VkCommandPool commandPool,
334 const vk::VkCommandBufferLevel level,
335 const size_t numCommandBuffers)
350 const vk::VkFence& renderCompleteFence;
351 const vk::VkSemaphore& renderCompleteSemaphore;
352 const vk::VkSemaphore& imageAvailableSemaphore;
353 const vk::VkCommandBuffer& commandBuffer;
356 FrameStreamObjects (const vk::DeviceInterface& vkd, vk::VkDevice device, vk::VkCommandPool cmdPool, size_t maxQueuedFrames)
365 size_t frameNumber (void) const { DE_ASSERT(m_nextFrame > 0u); return m_nextFrame - 1u; }
369 const size_t mod = m_nextFrame % m_maxQueuedFrames;
382 const vector<FenceSp> renderingCompleteFences;
383 const vector<SemaphoreSp> renderingCompleteSemaphores;
384 const vector<SemaphoreSp> imageAvailableSemaphores;
385 const vector<CommandBufferSp> commandBuffers;
387 const size_t m_maxQueuedFrames;
393 const tcu::UVec2 desiredSize (256, 256);
394 const InstanceHelper instHelper (m_context, m_wsiType);
395 const NativeObjects native (m_context, instHelper.supportedExtensions, m_wsiType, 1u, tcu::just(desiredSize));
396 const vk::Unique<vk::VkSurfaceKHR> surface (createSurface(instHelper.vki, instHelper.instance, m_wsiType, native.getDisplay(), native.getWindow(), m_context.getTestContext().getCommandLine()));
397 const DeviceHelper devHelper (m_context, instHelper.vki, instHelper.instance, vector<vk::VkSurfaceKHR>(1u, surface.get()), getRequiredDeviceExts());
398 const vk::DeviceInterface& vkd = devHelper.vkd;
399 const vk::VkDevice device = *devHelper.device;
401 const vk::VkSwapchainCreateInfoKHR swapchainInfo = getBasicSwapchainParameters(m_wsiType, instHelper.vki, devHelper.physicalDevice, *surface, desiredSize, 2);
402 const vk::Unique<vk::VkSwapchainKHR> swapchain (vk::createSwapchainKHR(vkd, device, &swapchainInfo));
403 const vector<vk::VkImage> swapchainImages = vk::wsi::getSwapchainImages(vkd, device, *swapchain);
404 const vk::Unique<vk::VkCommandPool> commandPool (createCommandPool(vkd, device, vk::VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, devHelper.queueFamilyIndex));
405 const vk::wsi::WsiTriangleRenderer renderer (vkd,
455 PresentIdWaitSimpleInstance(Context& context, vk::wsi::Type wsiType, const vector<PresentAndWaitOps>& sequence)
461 virtual tcu::TestStatus run (const vk::DeviceInterface& vkd,
467 const vk::wsi::WsiTriangleRenderer& renderer);
469 const vector<PresentAndWaitOps> m_sequence;
474 deUint32 recordAndSubmitFrame (FrameStreamObjects::FrameObjects& frameObjects, const vk::wsi::WsiTriangleRenderer& triangleRenderer, const vk::DeviceInterface& vkd, vk::VkDevice device, vk::VkSwapchainKHR swapchain, size_t swapchainSize, vk::VkQueue queue, size_t frameNumber, tcu::TestLog& testLog)
482 const vk::VkResult acquireResult = vkd.acquireNextImageKHR(device,
496 const vk::VkPipelineStageFlags waitDstStage = vk::VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT;
497 const vk::VkSubmitInfo submitInfo =
516 tcu::TestStatus PresentIdWaitSimpleInstance::run (const vk::DeviceInterface& vkd, vk::VkDevice device, vk::VkQueue queue, vk::VkCommandPool commandPool, vk::VkSwapchainKHR swapchain, size_t swapchainSize, const vk::wsi::WsiTriangleRenderer& renderer)
518 const size_t maxQueuedFrames = swapchainSize*2;
521 for (const auto& step : m_sequence)
523 for (const auto& presentOp : step.presentOps)
532 const vk::VkPresentIdKHR presentId =
535 nullptr, // const void* pNext;
537 (presentOp.presentId ? &presentOp.presentId.get() : nullptr ), // const deUint64* pPresentIds;
540 const vk::VkPresentInfoKHR presentInfo =
556 const vk::VkResult expected = presentOp.expectedResult.get();
572 for (const auto& waitOp : step.waitOps)
588 const auto timeoutRange = calcTimeoutRange(waitOp.timeout);
616 PresentIdInstance(Context& context, vk::wsi::Type wsiType, const vector<PresentAndWaitOps>& sequence)
622 static vector<const char*> requiredDeviceExts (void)
624 vector<const char*> extensions;
629 virtual vector<const char*> getRequiredDeviceExts (void)
639 PresentWaitInstance(Context& context, vk::wsi::Type wsiType, const vector<PresentAndWaitOps>& sequence)
645 static vector<const char*> requiredDeviceExts (void)
647 vector<const char*> extensions;
653 virtual vector<const char*> getRequiredDeviceExts (void)
662 static const vector<PresentAndWaitOps> sequence;
669 const vector<PresentAndWaitOps> PresentIdZeroInstance::sequence =
683 static const vector<PresentAndWaitOps> sequence;
690 const vector<PresentAndWaitOps> PresentIdIncreasingInstance::sequence =
705 static const vector<PresentAndWaitOps> sequence;
712 const vector<PresentAndWaitOps> PresentIdInterleavedInstance::sequence =
729 static const vector<PresentAndWaitOps> sequence;
736 const vector<PresentAndWaitOps> PresentWaitSingleFrameInstance::sequence =
751 static const vector<PresentAndWaitOps> sequence;
758 const vector<PresentAndWaitOps> PresentWaitPastFrameInstance::sequence =
796 static const vector<PresentAndWaitOps> sequence;
803 const vector<PresentAndWaitOps> PresentWaitNoFramesInstance::sequence =
818 static const vector<PresentAndWaitOps> sequence;
825 const vector<PresentAndWaitOps> PresentWaitNoFrameIdInstance::sequence =
850 static const vector<PresentAndWaitOps> sequence;
857 const vector<PresentAndWaitOps> PresentWaitFutureFrameInstance::sequence =
881 static vector<const char*> requiredDeviceExts (void)
883 vector<const char*> extensions;
889 virtual vector<const char*> getRequiredDeviceExts (void)
912 const vk::wsi::PlatformProperties& platformProperties = getPlatformProperties(m_wsiType);
916 const tcu::UVec2 desiredSize (256, 256);
917 const InstanceHelper instHelper (m_context, m_wsiType);
918 const NativeObjects native (m_context, instHelper.supportedExtensions, m_wsiType, 2u, tcu::just(desiredSize));
919 const vk::Unique<vk::VkSurfaceKHR> surface1 (createSurface(instHelper.vki, instHelper.instance, m_wsiType, native.getDisplay(), native.getWindow(0), m_context.getTestContext().getCommandLine()));
920 const vk::Unique<vk::VkSurfaceKHR> surface2 (createSurface(instHelper.vki, instHelper.instance, m_wsiType, native.getDisplay(), native.getWindow(1), m_context.getTestContext().getCommandLine()));
921 const DeviceHelper devHelper (m_context, instHelper.vki, instHelper.instance, vector<vk::VkSurfaceKHR>{surface1.get(), surface2.get()}, getRequiredDeviceExts());
922 const vk::DeviceInterface& vkd = devHelper.vkd;
923 const vk::VkDevice device = *devHelper.device;
925 const vk::VkSwapchainCreateInfoKHR swapchainInfo1 = getBasicSwapchainParameters(m_wsiType, instHelper.vki, devHelper.physicalDevice, surface1.get(), desiredSize, 2);
926 const vk::VkSwapchainCreateInfoKHR swapchainInfo2 = getBasicSwapchainParameters(m_wsiType, instHelper.vki, devHelper.physicalDevice, surface2.get(), desiredSize, 2);
927 const vk::Unique<vk::VkSwapchainKHR> swapchain1 (vk::createSwapchainKHR(vkd, device, &swapchainInfo1));
928 const vk::Unique<vk::VkSwapchainKHR> swapchain2 (vk::createSwapchainKHR(vkd, device, &swapchainInfo2));
929 const vector<vk::VkImage> swapchainImages1 = vk::wsi::getSwapchainImages(vkd, device, swapchain1.get());
930 const vector<vk::VkImage> swapchainImages2 = vk::wsi::getSwapchainImages(vkd, device, swapchain2.get());
931 const vk::Unique<vk::VkCommandPool> commandPool (createCommandPool(vkd, device, vk::VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, devHelper.queueFamilyIndex));
932 const vk::wsi::WsiTriangleRenderer renderer1 (vkd,
941 const vk::wsi::WsiTriangleRenderer renderer2 (vkd,
954 const size_t maxQueuedFrames = swapchainImages1.size()*2;
959 const vector<DualIdAndWait> sequence =
975 for (const auto& step : sequence)
986 const deUint64 presentIdsArr[] = { step.idWait1.presentId, step.idWait2.presentId };
987 const vk::VkPresentIdKHR presentId =
990 nullptr, // const void* pNext;
992 presentIdsArr, // const deUint64* pPresentIds;
995 const vk::VkSemaphore semaphoreArr[] = { frameObjects1.renderCompleteSemaphore, frameObjects2.renderCompleteSemaphore };
996 const vk::VkSwapchainKHR swapchainArr[] = { swapchain1.get(), swapchain2.get() };
997 const deUint32 imgIndexArr[] = { imageNdx1, imageNdx2 };
998 const vk::VkPresentInfoKHR presentInfo =
1012 const IdAndWait* idWaitArr[] = { &step.idWait1, &step.idWait2 };
1040 PresentIdWaitCase (vk::wsi::Type wsiType, tcu::TestContext& ctx, const std::string& name);
1042 virtual void initPrograms (vk::SourceCollections& programCollection) const;
1043 virtual TestInstance* createInstance (Context& context) const;
1044 virtual void checkSupport (Context& context) const;
1051 PresentIdWaitCase<T>::PresentIdWaitCase (vk::wsi::Type wsiType, tcu::TestContext& ctx, const std::string& name)
1057 void PresentIdWaitCase<T>::initPrograms (vk::SourceCollections& programCollection) const
1063 TestInstance* PresentIdWaitCase<T>::createInstance (Context& context) const
1069 void PresentIdWaitCase<T>::checkSupport (Context& context) const
1072 const auto instanceExtensions = getRequiredInstanceExtensions(m_wsiType);
1073 for (const auto& ext : instanceExtensions)
1080 const auto& vki = context.getInstanceInterface();
1081 const auto physDev = context.getPhysicalDevice();
1082 const auto supportedDeviceExts = vk::enumerateDeviceExtensionProperties(vki, physDev, nullptr);
1083 const auto mandatoryDeviceExts = getMandatoryDeviceExtensions();
1086 for (const auto& ext : mandatoryDeviceExts)
1089 for (const auto& ext : checkedDeviceExts)