Class VulkanLWJGLInstance
java.lang.Object
com.io7m.jcoronado.lwjgl.internal.VulkanLWJGLInstance
- All Implemented Interfaces:
VulkanHandleDispatchableType, VulkanHandleType, VulkanInstanceType, com.io7m.jmulticlose.core.CloseableType, AutoCloseable
LWJGL
VkInstance-
Constructor Summary
ConstructorsConstructorDescriptionVulkanLWJGLInstance(VulkanInstanceProviderType inProvider, long inInstanceID, VulkanLWJGLMetricsInstance inMetrics, VulkanInstanceProviderConfiguration inInstanceProviderConfiguration, org.lwjgl.vulkan.VkInstance inInstance, VulkanLWJGLExtensionsRegistry inExtensionRegistry, Map<String, VulkanExtensionType> inExtensionsEnabled, VulkanLWJGLHostAllocatorProxy inHostAllocatorProxy, VulkanVersion inApiVersionMaximumSupported, VulkanVersion inApiVersionUsed) LWJGLVkInstance -
Method Summary
Modifier and TypeMethodDescriptionFind the maximum API version supported.Return the API version that this instance will support.protected final voidfinal voidclose()Destroy the object.protected voidfinal booleanfinal longhandle()final inthashCode()org.lwjgl.vulkan.VkInstanceinstance()final booleanisClosed()protected org.slf4j.Loggerlogger()metrics()provider()voidSet the object name for debugging.final StringtoString()Methods inherited from interface com.io7m.jmulticlose.core.CloseableType
isClosedMethods inherited from interface VulkanInstanceType
close, findEnabledExtension, physicalDevices
-
Constructor Details
-
VulkanLWJGLInstance
public VulkanLWJGLInstance(VulkanInstanceProviderType inProvider, long inInstanceID, VulkanLWJGLMetricsInstance inMetrics, VulkanInstanceProviderConfiguration inInstanceProviderConfiguration, org.lwjgl.vulkan.VkInstance inInstance, VulkanLWJGLExtensionsRegistry inExtensionRegistry, Map<String, VulkanExtensionType> inExtensionsEnabled, VulkanLWJGLHostAllocatorProxy inHostAllocatorProxy, VulkanVersion inApiVersionMaximumSupported, VulkanVersion inApiVersionUsed) LWJGLVkInstance- Parameters:
inProvider- The providerinInstanceID- The instance IDinMetrics- The metricsinInstanceProviderConfiguration- The instance provider configurationinInstance- The instanceinExtensionRegistry- The extensionsinExtensionsEnabled- The enabled extensionsinHostAllocatorProxy- The host allocator proxyinApiVersionMaximumSupported- The maximum API versioninApiVersionUsed- The used API version
-
-
Method Details
-
logger
protected org.slf4j.Logger logger() -
closeActual
protected void closeActual() -
enumeratePhysicalDevices
- Specified by:
enumeratePhysicalDevicesin interfaceVulkanInstanceType- Returns:
- The available physical devices
- Throws:
VulkanException- On errors
-
apiVersionMaximumSupported
Description copied from interface:VulkanInstanceTypeFind the maximum API version supported. This is essentially the same asVulkanInstanceProviderType.findSupportedInstanceVersion(), and does not indicate that this particular instance will allow function calls that require that version.- Specified by:
apiVersionMaximumSupportedin interfaceVulkanInstanceType- Returns:
- The maximum API version supported
- See Also:
-
apiVersionUsed
Description copied from interface:VulkanInstanceTypeReturn the API version that this instance will support. This is the version that the user actually requested, and therefore defines the upper bound for the Vulkan API version that can be used with this instance.- Specified by:
apiVersionUsedin interfaceVulkanInstanceType- Returns:
- The API version that this instance is configured to use
-
enabledExtensions
- Specified by:
enabledExtensionsin interfaceVulkanInstanceType- Returns:
- The enabled extensions for the instance
-
instance
public org.lwjgl.vulkan.VkInstance instance()- Returns:
- The underlying instance
-
provider
- Specified by:
providerin interfaceVulkanInstanceType- Returns:
- The instance provider used to create the instance
-
metrics
- Specified by:
metricsin interfaceVulkanInstanceType- Returns:
- The metrics for the instance
-
hostAllocatorProxy
- Returns:
- The underlying host allocator proxy
-
isClosed
public final boolean isClosed()- Specified by:
isClosedin interfacecom.io7m.jmulticlose.core.CloseableType
-
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
-
setName
-