Class VkSurfaceCapabilities2EXT

All Implemented Interfaces:
AutoCloseable, NativeResource, Pointer

public class VkSurfaceCapabilities2EXT extends Struct<VkSurfaceCapabilities2EXT> implements NativeResource
Structure describing capabilities of a surface.
Valid Usage
Valid Usage (Implicit)
See Also

VkExtent2D, GetPhysicalDeviceSurfaceCapabilities2EXT

Layout


 struct VkSurfaceCapabilities2EXT {
     VkStructureType sType();
     void * pNext();
     uint32_t minImageCount();
     uint32_t maxImageCount();
     VkExtent2D currentExtent();
     VkExtent2D minImageExtent();
     VkExtent2D maxImageExtent();
     uint32_t maxImageArrayLayers();
     VkSurfaceTransformFlagsKHR supportedTransforms();
     VkSurfaceTransformFlagBitsKHR currentTransform();
     VkCompositeAlphaFlagsKHR supportedCompositeAlpha();
     VkImageUsageFlags supportedUsageFlags();
     VkSurfaceCounterFlagsEXT supportedSurfaceCounters();
 }
  • Field Details

    • SIZEOF

      public static final int SIZEOF
      The struct size in bytes.
    • ALIGNOF

      public static final int ALIGNOF
      The struct alignment in bytes.
    • STYPE

      public static final int STYPE
      The struct member offsets.
    • PNEXT

      public static final int PNEXT
      The struct member offsets.
    • MINIMAGECOUNT

      public static final int MINIMAGECOUNT
      The struct member offsets.
    • MAXIMAGECOUNT

      public static final int MAXIMAGECOUNT
      The struct member offsets.
    • CURRENTEXTENT

      public static final int CURRENTEXTENT
      The struct member offsets.
    • MINIMAGEEXTENT

      public static final int MINIMAGEEXTENT
      The struct member offsets.
    • MAXIMAGEEXTENT

      public static final int MAXIMAGEEXTENT
      The struct member offsets.
    • MAXIMAGEARRAYLAYERS

      public static final int MAXIMAGEARRAYLAYERS
      The struct member offsets.
    • SUPPORTEDTRANSFORMS

      public static final int SUPPORTEDTRANSFORMS
      The struct member offsets.
    • CURRENTTRANSFORM

      public static final int CURRENTTRANSFORM
      The struct member offsets.
    • SUPPORTEDCOMPOSITEALPHA

      public static final int SUPPORTEDCOMPOSITEALPHA
      The struct member offsets.
    • SUPPORTEDUSAGEFLAGS

      public static final int SUPPORTEDUSAGEFLAGS
      The struct member offsets.
    • SUPPORTEDSURFACECOUNTERS

      public static final int SUPPORTEDSURFACECOUNTERS
      The struct member offsets.
  • Constructor Details

    • VkSurfaceCapabilities2EXT

      public VkSurfaceCapabilities2EXT(ByteBuffer container)
      Creates a VkSurfaceCapabilities2EXT instance at the current position of the specified ByteBuffer container. Changes to the buffer's content will be visible to the struct instance and vice versa.

      The created instance holds a strong reference to the container object.

  • Method Details

    • sizeof

      public int sizeof()
      Description copied from class: Struct
      Returns sizeof(struct).
      Specified by:
      sizeof in class Struct<VkSurfaceCapabilities2EXT>
    • sType

      public int sType()
      a VkStructureType value identifying this structure.
    • pNext

      public long pNext()
      NULL or a pointer to a structure extending this structure.
    • minImageCount

      public int minImageCount()
      the minimum number of images the specified device supports for a swapchain created for the surface, and will be at least one.
    • maxImageCount

      public int maxImageCount()
      the maximum number of images the specified device supports for a swapchain created for the surface, and will be either 0, or greater than or equal to minImageCount. A value of 0 means that there is no limit on the number of images, though there may be limits related to the total amount of memory used by presentable images.
    • currentExtent

      public VkExtent2D currentExtent()
      the current width and height of the surface, or the special value (0xFFFFFFFF, 0xFFFFFFFF) indicating that the surface size will be determined by the extent of a swapchain targeting the surface.
    • minImageExtent

      public VkExtent2D minImageExtent()
      contains the smallest valid swapchain extent for the surface on the specified device. The width and height of the extent will each be less than or equal to the corresponding width and height of currentExtent, unless currentExtent has the special value described above.
    • maxImageExtent

      public VkExtent2D maxImageExtent()
      contains the largest valid swapchain extent for the surface on the specified device. The width and height of the extent will each be greater than or equal to the corresponding width and height of minImageExtent. The width and height of the extent will each be greater than or equal to the corresponding width and height of currentExtent, unless currentExtent has the special value described above.
    • maxImageArrayLayers

      public int maxImageArrayLayers()
      the maximum number of layers presentable images can have for a swapchain created for this device and surface, and will be at least one.
    • supportedTransforms

      public int supportedTransforms()
      a bitmask of VkSurfaceTransformFlagBitsKHR indicating the presentation transforms supported for the surface on the specified device. At least one bit will be set.
    • currentTransform

      public int currentTransform()
      VkSurfaceTransformFlagBitsKHR value indicating the surface’s current transform relative to the presentation engine’s natural orientation.
    • supportedCompositeAlpha

      public int supportedCompositeAlpha()
      a bitmask of VkCompositeAlphaFlagBitsKHR, representing the alpha compositing modes supported by the presentation engine for the surface on the specified device, and at least one bit will be set. Opaque composition can be achieved in any alpha compositing mode by either using an image format that has no alpha component, or by ensuring that all pixels in the presentable images have an alpha value of 1.0.
    • supportedUsageFlags

      public int supportedUsageFlags()
      a bitmask of VkImageUsageFlagBits representing the ways the application can use the presentable images of a swapchain created with VkPresentModeKHR set to PRESENT_MODE_IMMEDIATE_KHR, PRESENT_MODE_MAILBOX_KHR, PRESENT_MODE_FIFO_KHR or PRESENT_MODE_FIFO_RELAXED_KHR for the surface on the specified device. IMAGE_USAGE_COLOR_ATTACHMENT_BIT must be included in the set. Implementations may support additional usages.
    • supportedSurfaceCounters

      public int supportedSurfaceCounters()
      a bitmask of VkSurfaceCounterFlagBitsEXT indicating the supported surface counter types.
    • sType

      public VkSurfaceCapabilities2EXT sType(int value)
      Sets the specified value to the sType() field.
    • sType$Default

      public VkSurfaceCapabilities2EXT sType$Default()
    • pNext

      public VkSurfaceCapabilities2EXT pNext(long value)
      Sets the specified value to the pNext() field.
    • set

      public VkSurfaceCapabilities2EXT set(int sType, long pNext)
      Initializes this struct with the specified values.
    • set

      Copies the specified struct data to this struct.
      Parameters:
      src - the source struct
      Returns:
      this struct
    • malloc

      public static VkSurfaceCapabilities2EXT malloc()
      Returns a new VkSurfaceCapabilities2EXT instance allocated with memAlloc. The instance must be explicitly freed.
    • calloc

      public static VkSurfaceCapabilities2EXT calloc()
      Returns a new VkSurfaceCapabilities2EXT instance allocated with memCalloc. The instance must be explicitly freed.
    • create

      public static VkSurfaceCapabilities2EXT create()
      Returns a new VkSurfaceCapabilities2EXT instance allocated with BufferUtils.
    • create

      public static VkSurfaceCapabilities2EXT create(long address)
      Returns a new VkSurfaceCapabilities2EXT instance for the specified memory address.
    • createSafe

      @Nullable public static VkSurfaceCapabilities2EXT createSafe(long address)
      Like create, but returns null if address is NULL.
    • malloc

      public static VkSurfaceCapabilities2EXT.Buffer malloc(int capacity)
      Returns a new VkSurfaceCapabilities2EXT.Buffer instance allocated with memAlloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • calloc

      public static VkSurfaceCapabilities2EXT.Buffer calloc(int capacity)
      Returns a new VkSurfaceCapabilities2EXT.Buffer instance allocated with memCalloc. The instance must be explicitly freed.
      Parameters:
      capacity - the buffer capacity
    • create

      public static VkSurfaceCapabilities2EXT.Buffer create(int capacity)
      Returns a new VkSurfaceCapabilities2EXT.Buffer instance allocated with BufferUtils.
      Parameters:
      capacity - the buffer capacity
    • create

      public static VkSurfaceCapabilities2EXT.Buffer create(long address, int capacity)
      Create a VkSurfaceCapabilities2EXT.Buffer instance at the specified memory.
      Parameters:
      address - the memory address
      capacity - the buffer capacity
    • createSafe

      @Nullable public static VkSurfaceCapabilities2EXT.Buffer createSafe(long address, int capacity)
      Like create, but returns null if address is NULL.
    • mallocStack

      @Deprecated public static VkSurfaceCapabilities2EXT mallocStack()
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
    • callocStack

      @Deprecated public static VkSurfaceCapabilities2EXT callocStack()
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
    • mallocStack

      @Deprecated public static VkSurfaceCapabilities2EXT mallocStack(MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(MemoryStack) instead.
    • callocStack

      @Deprecated public static VkSurfaceCapabilities2EXT callocStack(MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(MemoryStack) instead.
    • mallocStack

      @Deprecated public static VkSurfaceCapabilities2EXT.Buffer mallocStack(int capacity)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
    • callocStack

      @Deprecated public static VkSurfaceCapabilities2EXT.Buffer callocStack(int capacity)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
    • mallocStack

      @Deprecated public static VkSurfaceCapabilities2EXT.Buffer mallocStack(int capacity, MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use malloc(int, MemoryStack) instead.
    • callocStack

      @Deprecated public static VkSurfaceCapabilities2EXT.Buffer callocStack(int capacity, MemoryStack stack)
      Deprecated.
      Deprecated for removal in 3.4.0. Use calloc(int, MemoryStack) instead.
    • malloc

      public static VkSurfaceCapabilities2EXT malloc(MemoryStack stack)
      Returns a new VkSurfaceCapabilities2EXT instance allocated on the specified MemoryStack.
      Parameters:
      stack - the stack from which to allocate
    • calloc

      public static VkSurfaceCapabilities2EXT calloc(MemoryStack stack)
      Returns a new VkSurfaceCapabilities2EXT instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      stack - the stack from which to allocate
    • malloc

      public static VkSurfaceCapabilities2EXT.Buffer malloc(int capacity, MemoryStack stack)
      Returns a new VkSurfaceCapabilities2EXT.Buffer instance allocated on the specified MemoryStack.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • calloc

      public static VkSurfaceCapabilities2EXT.Buffer calloc(int capacity, MemoryStack stack)
      Returns a new VkSurfaceCapabilities2EXT.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.
      Parameters:
      capacity - the buffer capacity
      stack - the stack from which to allocate
    • nsType

      public static int nsType(long struct)
      Unsafe version of sType().
    • npNext

      public static long npNext(long struct)
      Unsafe version of pNext().
    • nminImageCount

      public static int nminImageCount(long struct)
      Unsafe version of minImageCount().
    • nmaxImageCount

      public static int nmaxImageCount(long struct)
      Unsafe version of maxImageCount().
    • ncurrentExtent

      public static VkExtent2D ncurrentExtent(long struct)
      Unsafe version of currentExtent().
    • nminImageExtent

      public static VkExtent2D nminImageExtent(long struct)
      Unsafe version of minImageExtent().
    • nmaxImageExtent

      public static VkExtent2D nmaxImageExtent(long struct)
      Unsafe version of maxImageExtent().
    • nmaxImageArrayLayers

      public static int nmaxImageArrayLayers(long struct)
      Unsafe version of maxImageArrayLayers().
    • nsupportedTransforms

      public static int nsupportedTransforms(long struct)
      Unsafe version of supportedTransforms().
    • ncurrentTransform

      public static int ncurrentTransform(long struct)
      Unsafe version of currentTransform().
    • nsupportedCompositeAlpha

      public static int nsupportedCompositeAlpha(long struct)
      Unsafe version of supportedCompositeAlpha().
    • nsupportedUsageFlags

      public static int nsupportedUsageFlags(long struct)
      Unsafe version of supportedUsageFlags().
    • nsupportedSurfaceCounters

      public static int nsupportedSurfaceCounters(long struct)
      Unsafe version of supportedSurfaceCounters().
    • nsType

      public static void nsType(long struct, int value)
      Unsafe version of sType.
    • npNext

      public static void npNext(long struct, long value)
      Unsafe version of pNext.