Package org.lwjgl.vulkan
Class VkSurfaceCapabilitiesKHR
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkSurfaceCapabilitiesKHR
-
- All Implemented Interfaces:
- java.lang.AutoCloseable, NativeResource, Pointer
public class VkSurfaceCapabilitiesKHR extends Struct
Khronos Reference Page
Vulkan SpecificationContains the basic capabilities of a surface.
Valid Usage
supportedTransforms
must be a valid combination ofVkSurfaceTransformFlagBitsKHR
valuescurrentTransform
must be a validVkSurfaceTransformFlagBitsKHR
valuesupportedCompositeAlpha
must be a valid combination ofVkCompositeAlphaFlagBitsKHR
valuessupportedUsageFlags
must be a valid combination ofVkImageUsageFlagBits
values
Member documentation
minImageCount
– the minimum number of images the specified device supports for a swapchain created for the surfacemaxImageCount
– the maximum number of images the specified device supports for a swapchain created for the surface. 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 swapchain images.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 surfaceminImageExtent
– the smallest valid swapchain extent for the surface on the specified devicemaxImageExtent
– the largest valid swapchain extent for the surface on the specified devicemaxImageArrayLayers
– the maximum number of layers swapchain images can have for a swapchain created for this device and surfacesupportedTransforms
– a bitfield ofVkSurfaceTransformFlagBitsKHR
, describing the presentation transforms supported for the surface on the specified device. One or more of:currentTransform
– a bitfield ofVkSurfaceTransformFlagBitsKHR
, describing the surface’s current transform relative to the presentation engine’s natural orientation. One of:supportedCompositeAlpha
– a bitfield ofVkCompositeAlphaFlagBitsKHR
, representing the alpha compositing modes supported by the presentation engine for the surface on the specified device. Opaque composition can be achieved in any alpha compositing mode by either using a swapchain image format that has no alpha component, or by ensuring that all pixels in the swapchain images have an alpha value of 1.0. One or more of:COMPOSITE_ALPHA_INHERIT_BIT_KHR
COMPOSITE_ALPHA_OPAQUE_BIT_KHR
COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR
COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR
supportedUsageFlags
– a bitfield ofVkImageUsageFlagBits
representing the ways the application can use the presentable images of a swapchain created for the surface on the specified device.IMAGE_USAGE_COLOR_ATTACHMENT_BIT
must be included in the set but implementations may support additional usages. One or more of:
Layout
struct VkSurfaceCapabilitiesKHR { uint32_t minImageCount; uint32_t maxImageCount;
VkExtent2D
currentExtent;VkExtent2D
minImageExtent;VkExtent2D
maxImageExtent; uint32_t maxImageArrayLayers; VkSurfaceTransformFlagsKHR supportedTransforms; VkSurfaceTransformFlagBitsKHR currentTransform; VkCompositeAlphaFlagsKHR supportedCompositeAlpha; VkImageUsageFlags supportedUsageFlags; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static class
VkSurfaceCapabilitiesKHR.Buffer
An array ofVkSurfaceCapabilitiesKHR
structs.-
Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer
Pointer.Default
-
-
Field Summary
Fields Modifier and Type Field and Description static int
SIZEOF
The struct size in bytes.-
Fields inherited from interface org.lwjgl.system.Pointer
POINTER_SHIFT, POINTER_SIZE
-
-
Constructor Summary
Constructors Constructor and Description VkSurfaceCapabilitiesKHR(java.nio.ByteBuffer container)
Creates aVkSurfaceCapabilitiesKHR
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description static VkSurfaceCapabilitiesKHR
calloc()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated withmemCalloc
.static VkSurfaceCapabilitiesKHR.Buffer
calloc(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated withmemCalloc
.static VkSurfaceCapabilitiesKHR
callocStack()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkSurfaceCapabilitiesKHR.Buffer
callocStack(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkSurfaceCapabilitiesKHR.Buffer
callocStack(int capacity, MemoryStack stack)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkSurfaceCapabilitiesKHR
callocStack(MemoryStack stack)
Returns a newVkSurfaceCapabilitiesKHR
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkSurfaceCapabilitiesKHR
create()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated withBufferUtils
.static VkSurfaceCapabilitiesKHR.Buffer
create(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated withBufferUtils
.static VkSurfaceCapabilitiesKHR
create(long address)
Returns a newVkSurfaceCapabilitiesKHR
instance for the specified memory address ornull
if the address isNULL
.static VkSurfaceCapabilitiesKHR.Buffer
create(long address, int capacity)
Create aVkSurfaceCapabilitiesKHR.Buffer
instance at the specified memory.VkExtent2D
currentExtent()
Returns aVkExtent2D
view of thecurrentExtent
field.int
currentTransform()
Returns the value of thecurrentTransform
field.static VkSurfaceCapabilitiesKHR
malloc()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated withmemAlloc
.static VkSurfaceCapabilitiesKHR.Buffer
malloc(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated withmemAlloc
.static VkSurfaceCapabilitiesKHR
mallocStack()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated on the thread-localMemoryStack
.static VkSurfaceCapabilitiesKHR.Buffer
mallocStack(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated on the thread-localMemoryStack
.static VkSurfaceCapabilitiesKHR.Buffer
mallocStack(int capacity, MemoryStack stack)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated on the specifiedMemoryStack
.static VkSurfaceCapabilitiesKHR
mallocStack(MemoryStack stack)
Returns a newVkSurfaceCapabilitiesKHR
instance allocated on the specifiedMemoryStack
.int
maxImageArrayLayers()
Returns the value of themaxImageArrayLayers
field.int
maxImageCount()
Returns the value of themaxImageCount
field.VkExtent2D
maxImageExtent()
Returns aVkExtent2D
view of themaxImageExtent
field.int
minImageCount()
Returns the value of theminImageCount
field.VkExtent2D
minImageExtent()
Returns aVkExtent2D
view of theminImageExtent
field.int
sizeof()
Returns thesizeof(struct)
.int
supportedCompositeAlpha()
Returns the value of thesupportedCompositeAlpha
field.int
supportedTransforms()
Returns the value of thesupportedTransforms
field.int
supportedUsageFlags()
Returns the value of thesupportedUsageFlags
field.-
Methods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toString
-
Methods inherited from interface org.lwjgl.system.NativeResource
close
-
-
-
-
Constructor Detail
-
VkSurfaceCapabilitiesKHR
public VkSurfaceCapabilitiesKHR(java.nio.ByteBuffer container)
Creates aVkSurfaceCapabilitiesKHR
instance at the current position of the specifiedByteBuffer
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 Detail
-
sizeof
public int sizeof()
Description copied from class:Struct
Returns thesizeof(struct)
.
-
minImageCount
public int minImageCount()
Returns the value of theminImageCount
field.
-
maxImageCount
public int maxImageCount()
Returns the value of themaxImageCount
field.
-
currentExtent
public VkExtent2D currentExtent()
Returns aVkExtent2D
view of thecurrentExtent
field.
-
minImageExtent
public VkExtent2D minImageExtent()
Returns aVkExtent2D
view of theminImageExtent
field.
-
maxImageExtent
public VkExtent2D maxImageExtent()
Returns aVkExtent2D
view of themaxImageExtent
field.
-
maxImageArrayLayers
public int maxImageArrayLayers()
Returns the value of themaxImageArrayLayers
field.
-
supportedTransforms
public int supportedTransforms()
Returns the value of thesupportedTransforms
field.
-
currentTransform
public int currentTransform()
Returns the value of thecurrentTransform
field.
-
supportedCompositeAlpha
public int supportedCompositeAlpha()
Returns the value of thesupportedCompositeAlpha
field.
-
supportedUsageFlags
public int supportedUsageFlags()
Returns the value of thesupportedUsageFlags
field.
-
malloc
public static VkSurfaceCapabilitiesKHR malloc()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkSurfaceCapabilitiesKHR calloc()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkSurfaceCapabilitiesKHR create()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated withBufferUtils
.
-
create
public static VkSurfaceCapabilitiesKHR create(long address)
Returns a newVkSurfaceCapabilitiesKHR
instance for the specified memory address ornull
if the address isNULL
.
-
malloc
public static VkSurfaceCapabilitiesKHR.Buffer malloc(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkSurfaceCapabilitiesKHR.Buffer calloc(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkSurfaceCapabilitiesKHR.Buffer create(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkSurfaceCapabilitiesKHR.Buffer create(long address, int capacity)
Create aVkSurfaceCapabilitiesKHR.Buffer
instance at the specified memory.- Parameters:
address
- the memory addresscapacity
- the buffer capacity
-
mallocStack
public static VkSurfaceCapabilitiesKHR mallocStack()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkSurfaceCapabilitiesKHR callocStack()
Returns a newVkSurfaceCapabilitiesKHR
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkSurfaceCapabilitiesKHR mallocStack(MemoryStack stack)
Returns a newVkSurfaceCapabilitiesKHR
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkSurfaceCapabilitiesKHR callocStack(MemoryStack stack)
Returns a newVkSurfaceCapabilitiesKHR
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocate
-
mallocStack
public static VkSurfaceCapabilitiesKHR.Buffer mallocStack(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkSurfaceCapabilitiesKHR.Buffer callocStack(int capacity)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.- Parameters:
capacity
- the buffer capacity
-
mallocStack
public static VkSurfaceCapabilitiesKHR.Buffer mallocStack(int capacity, MemoryStack stack)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
callocStack
public static VkSurfaceCapabilitiesKHR.Buffer callocStack(int capacity, MemoryStack stack)
Returns a newVkSurfaceCapabilitiesKHR.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.- Parameters:
stack
- the stack from which to allocatecapacity
- the buffer capacity
-
-