-
- All Superinterfaces:
java.lang.AutoCloseable
,VulkanHandleDispatchableType
,VulkanHandleType
- All Known Implementing Classes:
VulkanLWJGLPhysicalDevice
public interface VulkanPhysicalDeviceType extends VulkanHandleDispatchableType
A reference to a physical Vulkan device.- See Also:
- "VkPhysicalDevice"
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description VulkanLogicalDeviceType
createLogicalDevice(VulkanLogicalDeviceCreateInfo info)
Create a new logical device from this physical device.java.util.Map<java.lang.String,VulkanExtensionProperties>
extensions(java.util.Optional<java.lang.String> layer)
VulkanPhysicalDeviceFeatures
features()
VulkanFormatProperties
formatProperties(VulkanFormat format)
VulkanImageFormatProperties
imageFormatProperties(VulkanFormat format, VulkanImageKind type, VulkanImageTiling tiling, java.util.Set<VulkanImageUsageFlag> usage, java.util.Set<VulkanImageCreateFlag> flags)
VulkanInstanceType
instance()
java.util.Map<java.lang.String,VulkanLayerProperties>
layers()
VulkanPhysicalDeviceLimits
limits()
VulkanPhysicalDeviceMemoryProperties
memory()
VulkanPhysicalDeviceProperties
properties()
java.util.List<VulkanQueueFamilyProperties>
queueFamilies()
-
Methods inherited from interface com.io7m.jcoronado.api.VulkanHandleType
close, isClosed
-
-
-
-
Method Detail
-
instance
VulkanInstanceType instance()
- Returns:
- The instance to which the physical device belongs
-
extensions
java.util.Map<java.lang.String,VulkanExtensionProperties> extensions(java.util.Optional<java.lang.String> layer) throws VulkanException
- Parameters:
layer
- The layer that will be inspected for extensions- Returns:
- The available device extensions
- Throws:
VulkanException
- On errors
-
layers
java.util.Map<java.lang.String,VulkanLayerProperties> layers() throws VulkanException
- Returns:
- The available layers
- Throws:
VulkanException
- On errors
-
properties
VulkanPhysicalDeviceProperties properties() throws VulkanException
- Returns:
- The basic properties of the device
- Throws:
VulkanException
- On errors
-
limits
VulkanPhysicalDeviceLimits limits() throws VulkanException
- Returns:
- The limits of the device
- Throws:
VulkanException
- On errors
-
features
VulkanPhysicalDeviceFeatures features() throws VulkanException
- Returns:
- The features of the device
- Throws:
VulkanException
- On errors
-
formatProperties
VulkanFormatProperties formatProperties(VulkanFormat format) throws VulkanException
- Parameters:
format
- The format- Returns:
- The properties of the given format
- Throws:
VulkanException
- On errors
-
imageFormatProperties
VulkanImageFormatProperties imageFormatProperties(VulkanFormat format, VulkanImageKind type, VulkanImageTiling tiling, java.util.Set<VulkanImageUsageFlag> usage, java.util.Set<VulkanImageCreateFlag> flags) throws VulkanException
- Parameters:
format
- The formattype
- The image kindtiling
- The image tiling modeusage
- The usage flagsflags
- The creation flags- Returns:
- The properties of the given image format
- Throws:
VulkanException
- On errors
-
memory
VulkanPhysicalDeviceMemoryProperties memory() throws VulkanException
- Returns:
- The memory properties of the device
- Throws:
VulkanException
- On errors
-
queueFamilies
java.util.List<VulkanQueueFamilyProperties> queueFamilies() throws VulkanException
- Returns:
- A read-only list of the available queue families
- Throws:
VulkanException
- On errors
-
createLogicalDevice
VulkanLogicalDeviceType createLogicalDevice(VulkanLogicalDeviceCreateInfo info) throws VulkanException
Create a new logical device from this physical device.- Parameters:
info
- The creation info- Returns:
- A new logical device
- Throws:
VulkanException
- On errors
-
-