# Interface VulkanSwapChainCreateInfoType

All Known Implementing Classes:
  `VulkanSwapChainCreateInfo`

@Immutable public interface VulkanSwapChainCreateInfoType
Information needed to create a swap chain.

See Also:
  - "VkSwapchainCreateInfoKHR"

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `clipped()`
  `Set<VulkanCompositeAlphaFlagKHR>`
  `compositeAlpha()`
  `int`
  `imageArrayLayers()`
  `VulkanColorSpaceKHR`
  `imageColorSpace()`
  `VulkanExtent2D`
  `imageExtent()`
  `VulkanFormat`
  `imageFormat()`
  `VulkanSharingMode`
  `imageSharingMode()`
  `Set<VulkanImageUsageFlag>`
  `imageUsageFlags()`
  `int`
  `minimumImageCount()`
  `Optional<VulkanExtKHRSwapChainType.VulkanKHRSwapChainType>`
  `oldSwapChain()`
  `VulkanPresentModeKHR`
  `presentMode()`
  `Set<VulkanSurfaceTransformFlagKHR>`
  `preTransform()`
  `List<VulkanQueueFamilyIndex>`
  `queueFamilyIndices()`
  `VulkanExtKHRSurfaceType.VulkanKHRSurfaceType`
  `surface()`

- ## Method Details

  - ### surface

    @Parameter VulkanExtKHRSurfaceType.VulkanKHRSurfaceType surface()
    Returns:
      The swapchain's target surface

  - ### minimumImageCount

    @Parameter int minimumImageCount()
    Returns:
      The minimum number of presentation images the application needs

  - ### imageFormat

    @Parameter VulkanFormat imageFormat()
    Returns:
      The format of the presentation images

  - ### imageColorSpace

    @Parameter VulkanColorSpaceKHR imageColorSpace()
    Returns:
      The colorspace of the presentation images

  - ### imageExtent

    @Parameter VulkanExtent2D imageExtent()
    Returns:
      The dimensions of the presentation images

  - ### imageArrayLayers

    @Parameter int imageArrayLayers()
    Returns:
      The number of views for multiview/stereo presentation

  - ### imageUsageFlags

    @Parameter Set<VulkanImageUsageFlag> imageUsageFlags()
    Returns:
      The sharing mode used for the presentation images

  - ### imageSharingMode

    @Parameter VulkanSharingMode imageSharingMode()
    Returns:
      The sharing mode used for the presentation images

  - ### queueFamilyIndices

    @Parameter List<VulkanQueueFamilyIndex> queueFamilyIndices()
    Returns:
      The queue family indices having access to the images in case of concurrent sharing mode

  - ### preTransform

    @Parameter Set<VulkanSurfaceTransformFlagKHR> preTransform()
    Returns:
      The transform, relative to the device's natural orientation, applied to the image content prior to presentation

  - ### compositeAlpha

    @Parameter Set<VulkanCompositeAlphaFlagKHR> compositeAlpha()
    Returns:
      The alpha blending mode used when compositing this surface with other surfaces in the window system

  - ### presentMode

    @Parameter VulkanPresentModeKHR presentMode()
    Returns:
      The presentation mode to use for presents on this swap chain

  - ### clipped

    @Parameter boolean clipped()
    Returns:
      `true` if presentable images may be affected by window clip regions

  - ### oldSwapChain

    @Parameter Optional<VulkanExtKHRSwapChainType.VulkanKHRSwapChainType> oldSwapChain()
    Returns:
      The existing swap chain to replace, if any