HikoGUI
A low latency retained GUI
|
Public Member Functions | |
gfx_surface (vk::SurfaceKHR surface) | |
gfx_surface (const gfx_surface &)=delete | |
gfx_surface & | operator= (const gfx_surface &)=delete |
gfx_surface (gfx_surface &&)=delete | |
gfx_surface & | operator= (gfx_surface &&)=delete |
void | set_device (gfx_device *device) noexcept |
gfx_device * | device () const noexcept |
extent2 | size () const noexcept |
void | update (extent2 new_size) noexcept |
draw_context | render_start (aarectangle redraw_rectangle) |
void | render_finish (draw_context const &context) |
void | add_delegate (gfx_surface_delegate *delegate) noexcept |
void | remove_delegate (gfx_surface_delegate *delegate) noexcept |
Data Fields | |
gfx_surface_state | state = gfx_surface_state::has_window |
gfx_surface_loss | loss = gfx_surface_loss::none |
vk::SurfaceKHR | intrinsic |
vk::SwapchainKHR | swapchain |
uint32_t | nrSwapchainImages |
vk::Extent2D | swapchainImageExtent |
vk::SurfaceFormatKHR | swapchainImageFormat |
std::vector< swapchain_image_info > | swapchain_image_infos |
VmaAllocation | depthImageAllocation |
vk::Image | depthImage |
vk::ImageView | depthImageView |
std::array< VmaAllocation, 1 > | colorImageAllocations |
std::array< vk::Image, 1 > | colorImages |
std::array< vk::ImageView, 1 > | colorImageViews |
std::array< vk::DescriptorImageInfo, 1 > | colorDescriptorImageInfos |
vk::RenderPass | renderPass |
vk::CommandBuffer | commandBuffer |
vk::Semaphore | imageAvailableSemaphore |
vk::Semaphore | renderFinishedSemaphore |
vk::Fence | renderFinishedFence |
std::unique_ptr< gfx_pipeline_image > | image_pipeline |
std::unique_ptr< gfx_pipeline_box > | box_pipeline |
std::unique_ptr< gfx_pipeline_SDF > | SDF_pipeline |
std::unique_ptr< gfx_pipeline_override > | override_pipeline |
std::unique_ptr< gfx_pipeline_tone_mapper > | tone_mapper_pipeline |
|
inlinenoexcept |
Set GPU device to manage this window. Change of the device may be done at runtime.
new_device | The device to use for rendering, may be nullptr. |