#![deny(unsafe_op_in_unsafe_fn)]
mod i_vulkan_context_external_objects_feature;
mod i_vulkan_device;
mod i_vulkan_platform_surface;
mod i_vulkan_render_target;
mod interop;
pub mod unmanaged_interop;
mod vulkan_bindings;
mod vulkan_context;
mod vulkan_exception;
mod vulkan_external_objects_feature;
mod vulkan_image_info;
mod vulkan_khr_surface_render_target;
mod vulkan_options;
mod vulkan_platform_graphics;
#[cfg(test)]
mod live_tests;
pub use ash;
pub use i_vulkan_context_external_objects_feature::{
IVulkanContextExternalObjectsFeature, IVulkanExternalImage, IVulkanExternalSemaphore,
};
pub use i_vulkan_device::{IVulkanDevice, IVulkanInstance, IVulkanPlatformGraphicsContext};
pub use i_vulkan_platform_surface::{
try_get_vulkan_khr_surface, try_get_vulkan_render_target_surface, IVulkanKhrSurfacePlatformSurface,
IVulkanKhrSurfacePlatformSurfaceFactory, IVulkanRenderTargetPlatformSurface,
};
pub use i_vulkan_render_target::{IVulkanRenderSession, IVulkanRenderTarget};
pub use vulkan_bindings::VulkanHelpers;
pub use vulkan_exception::{VulkanException, VulkanExceptionExtensions, VulkanResultExtensions};
pub use vulkan_image_info::VulkanImageInfo;
pub use vulkan_options::{
Version, VkGetInstanceProcAddressDelegate, VulkanDeviceCheckSurfaceFactory, VulkanDeviceCreationOptions,
VulkanInstanceCreationOptions, VulkanOptions, VulkanPlatformSpecificOptions,
};
pub use vulkan_platform_graphics::{IVulkanDeviceFactory, VulkanPlatformGraphics};
pub(crate) use vulkan_external_objects_feature::VulkanExternalObjectsFeature;
pub(crate) use vulkan_khr_surface_render_target::VulkanKhrRenderTarget;