Foray Library
rapid prototyping framework for crossplatform development of vulkan hardware ray tracing applications
|
Helper object managing a copy of an existing image for use as history information (reprojection etc.) More...
#include <foray_historyimage.hpp>
Public Member Functions | |
void | Create (core::Context *context, core::ManagedImage *source, VkImageUsageFlags additionalUsageFlags=0U) |
void | Resize (const VkExtent2D &size) |
void | ApplyToLayoutCache (core::ImageLayoutCache &layoutCache) |
void | CmdCopySourceToHistory (VkCommandBuffer cmdBuffer, base::FrameRenderInfo &renderInfo) |
Pipeline barriers, cmdCopyImage from source -> history. | |
bool | Exists () const |
void | Destroy () |
core::ManagedImage & | GetHistoryImage () |
operator core::ManagedImage & () | |
operator const core::ManagedImage & () const | |
Static Public Member Functions | |
static void | sMultiCopySourceToHistory (const std::vector< HistoryImage * > &historyImages, VkCommandBuffer cmdBuffer, base::FrameRenderInfo &renderInfo) |
Batch record pipeline barriers and cmdCopyImage for a set of history images. | |
Protected Attributes | |
core::ManagedImage * | mSource = nullptr |
core::ManagedImage | mHistory |
VkImageLayout | mHistoricLayout = VkImageLayout::VK_IMAGE_LAYOUT_UNDEFINED |
Helper object managing a copy of an existing image for use as history information (reprojection etc.)
The history image is named "History.{source->GetName()}", and inherits the entire createinfo of the original
void foray::util::HistoryImage::ApplyToLayoutCache | ( | core::ImageLayoutCache & | layoutCache | ) |
void foray::util::HistoryImage::CmdCopySourceToHistory | ( | VkCommandBuffer | cmdBuffer, |
base::FrameRenderInfo & | renderInfo | ||
) |
Pipeline barriers, cmdCopyImage from source -> history.
void foray::util::HistoryImage::Create | ( | core::Context * | context, |
core::ManagedImage * | source, | ||
VkImageUsageFlags | additionalUsageFlags = 0U |
||
) |
context | Required to initiate own copy |
source | Source image to copy |
additionalUsageFlags | UsageFlags to apply to the createinfo for the copy |
void foray::util::HistoryImage::Destroy | ( | ) |
|
inline |
|
inline |
|
inline |
|
inline |
void foray::util::HistoryImage::Resize | ( | const VkExtent2D & | size | ) |
|
static |
Batch record pipeline barriers and cmdCopyImage for a set of history images.
|
protected |
|
protected |
|
protected |