Home | History | Annotate | Download | only in layers

Lines Matching full:swapchain

244 // Return swapchain node for specified swapchain or else NULL
245 SWAPCHAIN_NODE *GetSwapchainNode(const layer_data *dev_data, VkSwapchainKHR swapchain) {
246 auto swp_it = dev_data->swapchainMap.find(swapchain);
387 // If mem is special swapchain key, then verify that image_state valid member is true
394 "%s: Cannot read invalid swapchain image 0x%" PRIx64 ", please fill the memory before using.",
416 // If mem is special swapchain key, then set entire image_state to valid param value
10085 auto most_recent_swapchain = surface_state->swapchain ? surface_state->swapchain : surface_state->old_swapchain;
10111 if (most_recent_swapchain != old_swapchain_state || (surface_state->old_swapchain && surface_state->swapchain)) {
10114 "%s: surface has an existing swapchain other than oldSwapchain", func_name))
10339 surface_state->swapchain = swapchain_state.get();
10342 surface_state->swapchain = nullptr;
10369 VKAPI_ATTR void VKAPI_CALL DestroySwapchainKHR(VkDevice device, VkSwapchainKHR swapchain, const VkAllocationCallbacks *pAllocator) {
10374 auto swapchain_data = GetSwapchainNode(dev_data, swapchain);
10395 if (surface_state->swapchain == swapchain_data) surface_state->swapchain = nullptr;
10399 dev_data->swapchainMap.erase(swapchain);
10402 if (!skip) dev_data->dispatch_table.DestroySwapchainKHR(device, swapchain, pAllocator);
10444 // Add imageMap entries for each swapchain image
10477 VKAPI_ATTR VkResult VKAPI_CALL GetSwapchainImagesKHR(VkDevice device, VkSwapchainKHR swapchain, uint32_t *pSwapchainImageCount,
10482 auto swapchain_state = GetSwapchainNode(device_data, swapchain);
10486 result = device_data->dispatch_table.GetSwapchainImagesKHR(device, swapchain, pSwapchainImageCount, pSwapchainImages);
10519 "vkQueuePresentKHR: Swapchain image index too large (%u). There are only %u images in this swapchain.",
10535 "vkQueuePresentKHR: Swapchain image index %u has not been acquired.", pPresentInfo->pImageIndices[i]);
10593 "than the corresponding swapchain's imageExtent.width (%i).",
10602 "than the corresponding swapchain's imageExtent.height (%i).",
10610 "(%i) is greater than the corresponding swapchain's imageArrayLayers (%i).",
10704 surface_state[i]->swapchain = swapchain_state.get();
10709 surface_state[i]->swapchain = nullptr;
10743 static bool PreCallValidateAcquireNextImageKHR(layer_data *dev_data, VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout,
10766 auto swapchain_data = GetSwapchainNode(dev_data, swapchain);
10769 HandleToUint64(swapchain), __LINE__, DRAWSTATE_SWAPCHAIN_REPLACED, "DS",
10770 "vkAcquireNextImageKHR: This swapchain has been replaced. The application can still present any images it "
10781 HandleToUint64(swapchain), __LINE__, DRAWSTATE_SWAPCHAIN_TOO_MANY_IMAGES, "DS",
10789 HandleToUint64(swapchain), __LINE__, DRAWSTATE_SWAPCHAIN_IMAGES_NOT_FOUND, "DS",
10791 "vkGetSwapchainImagesKHR after swapchain creation.");
10796 static void PostCallRecordAcquireNextImageKHR(layer_data *dev_data, VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout,
10815 auto swapchain_data = GetSwapchainNode(dev_data, swapchain);
10822 VKAPI_ATTR VkResult VKAPI_CALL AcquireNextImageKHR(VkDevice device, VkSwapchainKHR swapchain, uint64_t timeout,
10827 bool skip = PreCallValidateAcquireNextImageKHR(dev_data, device, swapchain, timeout, semaphore, fence, pImageIndex);
10832 VkResult result = dev_data->dispatch_table.AcquireNextImageKHR(device, swapchain, timeout, semaphore, fence, pImageIndex);
10836 PostCallRecordAcquireNextImageKHR(dev_data, device, swapchain, timeout, semaphore, fence, pImageIndex);
11045 if ((surface_state) && (surface_state->swapchain)) {