![]() |
UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
|
#include <vulkan_transfer_image.hpp>

Public Member Functions | |
| TransferImageImpl ()=default | |
| TransferImageImpl (vk::Device device, uint32_t id) | |
| void | destroy (vk::Device device) |
| Image2D & | get_buffer () |
| uint32_t | get_id () const |
| vulkan_display::ImageDescription | get_image_description () const |
| vk::ImageView | get_image_view (vk::Device device, vk::SamplerYcbcrConversion conversion) |
| void | init (vk::Device device, uint32_t id) |
| void | preprocess () |
| void | recreate (VulkanContext &context, vulkan_display::ImageDescription description) |
Public Attributes | |
| vk::Fence | is_available_fence |
Static Public Attributes | |
| static constexpr uint32_t | NO_ID = UINT32_MAX |
Private Types | |
| using | PreprocessFunction = std::function<void(vulkan_display::TransferImage& image)> |
Private Attributes | |
| Image2D | buffer |
| uint32_t | id = NO_ID |
| vulkan_display::ImageDescription | image_description |
| PreprocessFunction | preprocess_fun { nullptr } |
| unsigned char * | ptr = nullptr |
| vk::DeviceSize | row_pitch = 0 |
Friends | |
| class | vulkan_display::TransferImage |
Definition at line 168 of file vulkan_transfer_image.hpp.
|
private |
Definition at line 175 of file vulkan_transfer_image.hpp.
|
default |
|
inline |
Definition at line 210 of file vulkan_transfer_image.hpp.
References init().

| void vulkan_display_detail::TransferImageImpl::destroy | ( | vk::Device | device | ) |
Definition at line 241 of file vulkan_transfer_image.cpp.
References buffer, vulkan_display_detail::Image2D::destroy(), is_available_fence, and vulkan_display_detail::Image2D::memory.

|
inline |
Definition at line 197 of file vulkan_transfer_image.hpp.
References buffer.
Referenced by vulkan_display::VulkanDisplay::record_graphics_commands().
|
inline |
Definition at line 187 of file vulkan_transfer_image.hpp.
References id.
Referenced by vulkan_display::VulkanDisplay::acquire_image().
|
inline |
Definition at line 189 of file vulkan_transfer_image.hpp.
References image_description.
Referenced by vulkan_display::VulkanDisplay::acquire_image(), vulkan_display::VulkanDisplay::display_queued_image(), and vulkan_display::VulkanDisplay::reconfigure().
|
inline |
Definition at line 201 of file vulkan_transfer_image.hpp.
References buffer, and vulkan_display_detail::Image2D::get_image_view().
Referenced by vulkan_display::VulkanDisplay::bind_transfer_image().

| void vulkan_display_detail::TransferImageImpl::init | ( | vk::Device | device, |
| uint32_t | id ) |
Definition at line 97 of file vulkan_transfer_image.cpp.
References id, and is_available_fence.
Referenced by TransferImageImpl().
| void vulkan_display_detail::TransferImageImpl::preprocess | ( | ) |
Definition at line 233 of file vulkan_transfer_image.cpp.
References preprocess_fun.
Referenced by vulkan_display::VulkanDisplay::display_queued_image().
| void vulkan_display_detail::TransferImageImpl::recreate | ( | VulkanContext & | context, |
| vulkan_display::ImageDescription | description ) |
Definition at line 189 of file vulkan_transfer_image.cpp.
References buffer, vulkan_display_detail::Image2D::byte_size, description, vulkan_display_detail::Image2D::destroy(), vulkan_display_detail::get_buffer_size(), vulkan_display_detail::VulkanContext::get_device(), vulkan_display_detail::host_local, vulkan_display_detail::Image2D::image, image_description, vulkan_display_detail::Image2D::init(), vulkan_display_detail::Image2D::memory, NO_ID, vulkan_display_detail::preinitialised, ptr, and row_pitch.
Referenced by vulkan_display::VulkanDisplay::acquire_image().

|
friend |
Definition at line 181 of file vulkan_transfer_image.hpp.
|
private |
Definition at line 169 of file vulkan_transfer_image.hpp.
Referenced by destroy(), get_buffer(), get_image_view(), and recreate().
|
private |
Definition at line 170 of file vulkan_transfer_image.hpp.
Referenced by vulkan_display::TransferImage::TransferImage(), vulkan_display::TransferImage::get_id(), get_id(), and init().
|
private |
Definition at line 178 of file vulkan_transfer_image.hpp.
Referenced by vulkan_display::TransferImage::get_description(), get_image_description(), vulkan_display::TransferImage::get_size(), and recreate().
| vk::Fence vulkan_display_detail::TransferImageImpl::is_available_fence |
Definition at line 185 of file vulkan_transfer_image.hpp.
Referenced by destroy(), vulkan_display::VulkanDisplay::display_queued_image(), and init().
|
staticconstexpr |
Definition at line 183 of file vulkan_transfer_image.hpp.
Referenced by vulkan_display::VulkanDisplay::acquire_image(), and recreate().
|
private |
Definition at line 176 of file vulkan_transfer_image.hpp.
Referenced by preprocess(), and vulkan_display::TransferImage::set_process_function().
|
private |
Definition at line 171 of file vulkan_transfer_image.hpp.
Referenced by vulkan_display::TransferImage::get_memory_ptr(), and recreate().
|
private |
Definition at line 173 of file vulkan_transfer_image.hpp.
Referenced by vulkan_display::TransferImage::get_row_pitch(), and recreate().