#include <VulkanSwapChain.h>
Definition at line 31 of file VulkanSwapChain.h.
 
◆ acquireNextImage()
      
        
          | VkResult VulkanSwapChain::acquireNextImage  | 
          ( | 
          VkSemaphore |           presentCompleteSemaphore,  | 
        
        
           | 
           | 
          uint32_t * |           imageIndex ) | 
        
      
 
Acquires the next image in the swap chain
- Parameters
 - 
  
    | presentCompleteSemaphore | (Optional) Semaphore that is signaled when the image is ready for use  | 
    | imageIndex | Pointer to the image index that will be increased if the next image could be acquired | 
  
   
- Note
 - The function will always wait until the next image has been acquired by setting timeout to UINT64_MAX
 
- Returns
 - VkResult of the image acquisition 
 
Definition at line 368 of file VulkanSwapChain.cpp.
 
 
◆ cleanup()
      
        
          | void VulkanSwapChain::cleanup  | 
          ( | 
           | ) | 
           | 
        
      
 
 
◆ connect()
      
        
          | void VulkanSwapChain::connect  | 
          ( | 
          VkInstance |           instance,  | 
        
        
           | 
           | 
          VkPhysicalDevice |           physicalDevice,  | 
        
        
           | 
           | 
          VkDevice |           device ) | 
        
      
 
Set instance, physical and logical device to use for the swapchain and get all required function pointers
- Parameters
 - 
  
    | instance | Vulkan instance to use  | 
    | physicalDevice | Physical device used to query properties and formats relevant to the swapchain  | 
    | device | Logical representation of the device to create the swapchain for  | 
  
   
Definition at line 163 of file VulkanSwapChain.cpp.
 
 
◆ create()
      
        
          | void VulkanSwapChain::create  | 
          ( | 
          uint32_t * |           width,  | 
        
        
           | 
           | 
          uint32_t * |           height,  | 
        
        
           | 
           | 
          bool |           vsync = false ) | 
        
      
 
Create the swapchain and get its images with given width and height
- Parameters
 - 
  
    | width | Pointer to the width of the swapchain (may be adjusted to fit the requirements of the swapchain)  | 
    | height | Pointer to the height of the swapchain (may be adjusted to fit the requirements of the swapchain)  | 
    | vsync | (Optional) Can be used to force vsync-ed rendering (by using VK_PRESENT_MODE_FIFO_KHR as presentation mode)  | 
  
   
Definition at line 187 of file VulkanSwapChain.cpp.
 
 
◆ queuePresent()
      
        
          | VkResult VulkanSwapChain::queuePresent  | 
          ( | 
          VkQueue |           queue,  | 
        
        
           | 
           | 
          uint32_t |           imageIndex,  | 
        
        
           | 
           | 
          VkSemaphore |           waitSemaphore = VK_NULL_HANDLE ) | 
        
      
 
Queue an image for presentation
- Parameters
 - 
  
    | queue | Presentation queue for presenting the image  | 
    | imageIndex | Index of the swapchain image to queue for presentation  | 
    | waitSemaphore | (Optional) Semaphore that is waited on before the image is presented (only used if != VK_NULL_HANDLE) | 
  
   
- Returns
 - VkResult of the queue presentation 
 
Definition at line 384 of file VulkanSwapChain.cpp.
 
 
◆ buffers
◆ colorFormat
      
        
          | VkFormat VulkanSwapChain::colorFormat | 
        
      
 
 
◆ colorSpace
      
        
          | VkColorSpaceKHR VulkanSwapChain::colorSpace | 
        
      
 
 
◆ device
  
  
      
        
          | VkDevice VulkanSwapChain::device | 
         
       
   | 
  
private   | 
  
 
 
◆ fpAcquireNextImageKHR
  
  
      
        
          | PFN_vkAcquireNextImageKHR VulkanSwapChain::fpAcquireNextImageKHR | 
         
       
   | 
  
private   | 
  
 
 
◆ fpCreateSwapchainKHR
  
  
      
        
          | PFN_vkCreateSwapchainKHR VulkanSwapChain::fpCreateSwapchainKHR | 
         
       
   | 
  
private   | 
  
 
 
◆ fpDestroySwapchainKHR
  
  
      
        
          | PFN_vkDestroySwapchainKHR VulkanSwapChain::fpDestroySwapchainKHR | 
         
       
   | 
  
private   | 
  
 
 
◆ fpGetPhysicalDeviceSurfaceCapabilitiesKHR
  
  
      
        
          | PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR VulkanSwapChain::fpGetPhysicalDeviceSurfaceCapabilitiesKHR | 
         
       
   | 
  
private   | 
  
 
 
◆ fpGetPhysicalDeviceSurfaceFormatsKHR
  
  
      
        
          | PFN_vkGetPhysicalDeviceSurfaceFormatsKHR VulkanSwapChain::fpGetPhysicalDeviceSurfaceFormatsKHR | 
         
       
   | 
  
private   | 
  
 
 
◆ fpGetPhysicalDeviceSurfacePresentModesKHR
  
  
      
        
          | PFN_vkGetPhysicalDeviceSurfacePresentModesKHR VulkanSwapChain::fpGetPhysicalDeviceSurfacePresentModesKHR | 
         
       
   | 
  
private   | 
  
 
 
◆ fpGetPhysicalDeviceSurfaceSupportKHR
  
  
      
        
          | PFN_vkGetPhysicalDeviceSurfaceSupportKHR VulkanSwapChain::fpGetPhysicalDeviceSurfaceSupportKHR | 
         
       
   | 
  
private   | 
  
 
 
◆ fpGetSwapchainImagesKHR
  
  
      
        
          | PFN_vkGetSwapchainImagesKHR VulkanSwapChain::fpGetSwapchainImagesKHR | 
         
       
   | 
  
private   | 
  
 
 
◆ fpQueuePresentKHR
  
  
      
        
          | PFN_vkQueuePresentKHR VulkanSwapChain::fpQueuePresentKHR | 
         
       
   | 
  
private   | 
  
 
 
◆ imageCount
      
        
          | uint32_t VulkanSwapChain::imageCount | 
        
      
 
 
◆ images
      
        
          | std::vector<VkImage> VulkanSwapChain::images | 
        
      
 
 
◆ instance
  
  
      
        
          | VkInstance VulkanSwapChain::instance | 
         
       
   | 
  
private   | 
  
 
 
◆ physicalDevice
  
  
      
        
          | VkPhysicalDevice VulkanSwapChain::physicalDevice | 
         
       
   | 
  
private   | 
  
 
 
◆ queueNodeIndex
      
        
          | uint32_t VulkanSwapChain::queueNodeIndex = UINT32_MAX | 
        
      
 
 
◆ surface
  
  
      
        
          | VkSurfaceKHR VulkanSwapChain::surface | 
         
       
   | 
  
private   | 
  
 
 
◆ swapChain
      
        
          | VkSwapchainKHR VulkanSwapChain::swapChain = VK_NULL_HANDLE | 
        
      
 
 
The documentation for this class was generated from the following files: