Class VulkanLWJGLPhysicalDevice
java.lang.Object
com.io7m.jcoronado.lwjgl.internal.VulkanLWJGLPhysicalDevice
- All Implemented Interfaces:
VulkanHandleDispatchableType,VulkanHandleType,VulkanPhysicalDeviceType,AutoCloseable
LWJGL
VkPhysicalDevice-
Method Summary
Modifier and TypeMethodDescriptionprotected final voidfinal voidclose()Destroy the object.protected voidCreate a new logical device from this physical device.org.lwjgl.vulkan.VkPhysicalDevicedevice()Retrieve the device driver properties.final booleanextensions(Optional<String> layer) features()formatProperties(VulkanFormat format) final longhandle()final inthashCode()Retrieve the device ID properties.imageFormatProperties(VulkanFormat format, VulkanImageKind type, VulkanImageTiling tiling, Set<VulkanImageUsageFlag> usage, Set<VulkanImageCreateFlag> flags) instance()final booleanisClosed()layers()limits()protected org.slf4j.Loggerlogger()memory()final StringtoString()Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.io7m.jcoronado.api.VulkanHandleType
close, isClosedMethods inherited from interface com.io7m.jcoronado.api.VulkanPhysicalDeviceType
queueFamilyFindWithFlags, queueFamilyFindWithFlags
-
Method Details
-
device
public org.lwjgl.vulkan.VkPhysicalDevice device()- Returns:
- The underlying device
-
instance
- Specified by:
instancein interfaceVulkanPhysicalDeviceType- Returns:
- The instance to which the physical device belongs
-
extensions
public Map<String,VulkanExtensionProperties> extensions(Optional<String> layer) throws VulkanException - Specified by:
extensionsin interfaceVulkanPhysicalDeviceType- Parameters:
layer- The layer that will be inspected for extensions- Returns:
- The available device extensions
- Throws:
VulkanException- On errors
-
layers
- Specified by:
layersin interfaceVulkanPhysicalDeviceType- Returns:
- The available layers
- Throws:
VulkanException- On errors
-
properties
- Specified by:
propertiesin interfaceVulkanPhysicalDeviceType- Returns:
- The basic properties of the device
- Throws:
VulkanDestroyedException
-
limits
- Specified by:
limitsin interfaceVulkanPhysicalDeviceType- Returns:
- The limits of the device
- Throws:
VulkanDestroyedException
-
features
- Specified by:
featuresin interfaceVulkanPhysicalDeviceType- Returns:
- The features of the device
- Throws:
VulkanDestroyedException
-
formatProperties
- Specified by:
formatPropertiesin interfaceVulkanPhysicalDeviceType- Parameters:
format- The format- Returns:
- The properties of the given format
- Throws:
VulkanException- On errors
-
imageFormatProperties
public VulkanImageFormatProperties imageFormatProperties(VulkanFormat format, VulkanImageKind type, VulkanImageTiling tiling, Set<VulkanImageUsageFlag> usage, Set<VulkanImageCreateFlag> flags) throws VulkanException - Specified by:
imageFormatPropertiesin interfaceVulkanPhysicalDeviceType- 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
- Specified by:
memoryin interfaceVulkanPhysicalDeviceType- Returns:
- The memory properties of the device
- Throws:
VulkanException- On errors
-
queueFamilies
public SortedMap<VulkanQueueFamilyIndex,VulkanQueueFamilyProperties> queueFamilies() throws VulkanException- Specified by:
queueFamiliesin interfaceVulkanPhysicalDeviceType- Returns:
- A read-only list of the available queue families
- Throws:
VulkanException- On errors
-
createLogicalDevice
public VulkanLogicalDeviceType createLogicalDevice(VulkanLogicalDeviceCreateInfo info) throws VulkanException Description copied from interface:VulkanPhysicalDeviceTypeCreate a new logical device from this physical device.- Specified by:
createLogicalDevicein interfaceVulkanPhysicalDeviceType- Parameters:
info- The creation info- Returns:
- A new logical device
- Throws:
VulkanException- On errors
-
driverProperties
Description copied from interface:VulkanPhysicalDeviceTypeRetrieve the device driver properties.- Specified by:
driverPropertiesin interfaceVulkanPhysicalDeviceType- Returns:
- The device driver properties, if available
-
idProperties
Description copied from interface:VulkanPhysicalDeviceTypeRetrieve the device ID properties.- Specified by:
idPropertiesin interfaceVulkanPhysicalDeviceType- Returns:
- The device ID properties, if available
-
logger
protected org.slf4j.Logger logger() -
closeActual
protected void closeActual() -
hostAllocatorProxy
- Returns:
- The underlying host allocator proxy
-
isClosed
public final boolean isClosed()- Specified by:
isClosedin interfaceVulkanHandleType- Returns:
trueiff the handle has been destroyed withVulkanHandleType.close()- See Also:
-
close
public final void close()Description copied from interface:VulkanHandleTypeDestroy the object.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceVulkanHandleType
-
equals
-
hashCode
-
toString
-
handle
public final long handle()- Returns:
- The raw handle
-
checkNotClosed
- Throws:
VulkanDestroyedException
-