|
MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
|
| std::optional< Kakshya::ImageData > MayaFlux::Portal::Graphics::TextureLoom::download_image | ( | const std::shared_ptr< Core::VKImage > & | image, |
| const std::shared_ptr< Buffers::VKBuffer > & | staging = nullptr, |
||
| vk::ImageLayout | restore_layout = vk::ImageLayout::eShaderReadOnlyOptimal, |
||
| vk::PipelineStageFlags | restore_stage = vk::PipelineStageFlagBits::eFragmentShader |
||
| ) |
Download the base level of an image as typed pixels.
Blocking. The element type of the returned storage follows the format: one byte per channel gives uint8, two gives uint16, four gives float.
| image | Source image. Must satisfy readable_format(). |
| staging | Persistent host-visible staging buffer of at least the base level's byte size, or nullptr for a per-call one. |
| restore_layout | Layout the image is left in. |
| restore_stage | Pipeline stage that consumes the image after restore. |
Definition at line 637 of file TextureLoom.cpp.
References MayaFlux::Kakshya::ImageData::allocate(), calculate_image_size(), download_data(), format, get_channel_count(), image, MayaFlux::Journal::ImageProcessing, is_initialized(), MF_ERROR, MayaFlux::Journal::Portal, and readable_format().
Referenced by MayaFlux::IO::download_image().
Here is the call graph for this function:
Here is the caller graph for this function: