![]() |
HoviTron Video Pipeline
|
Class that manage the renderPass containing the synthesis and blending steps. More...
#include <VulkanRenderPass.h>
Public Member Functions | |
VulkanRenderPass (VulkanContext *context, VulkanWrapper *wraps) | |
void | init (InputProvider *inputProvider) override |
void | cleanUp () override |
void | updateBuffer (uint32_t currentImage, bool initAll, std::span< InputProvider::StreamFrameInfo > infos, int view) override |
void | recordCommandBuffer (vk::CommandBuffer &commandBuffer, int i, std::span< InputProvider::StreamFrameInfo > frameInfos, int view) override |
bool | isInitialized () override |
std::vector< vk::ImageView > | getAttachmentView (int swapIndex, int view) |
vk::Image | getImageToBlit (int imageIndex) override |
std::vector< vk::Format > | getSupportedDepthFormats () const override |
![]() | |
VulkanRenderPassAbstract (VulkanContext *context, VulkanWrapper *wraps) | |
virtual void | init (InputProvider *inputProvider) |
virtual void | cleanUp () |
virtual void | updateBuffer (uint32_t currentImage, bool initAll, std::span< InputProvider::StreamFrameInfo > infos, int view) |
virtual void | recordCommandBuffer (vk::CommandBuffer &commandBuffer, int i, std::span< InputProvider::StreamFrameInfo > frameInfos, int view) |
virtual bool | isInitialized () |
virtual vk::Image | getImageToBlit (int imageIndex)=0 |
virtual std::vector< vk::Format > | getSupportedDepthFormats () const =0 |
Data Fields | |
std::vector< std::unique_ptr< VulkanPipelineWarping > > | warpingPipelines |
std::vector< std::unique_ptr< VulkanPipelineBlending > > | blendingPipelines |
vk::RenderPass | renderPass |
std::vector< ImageStruct > | attachementColor |
std::vector< ImageStruct > | attachementDepthFloat |
std::vector< ImageStruct > | attachementQualityFloat |
std::vector< ImageStruct > | attachementAccuColor |
std::vector< ImageStruct > | attachementAccuQuality |
std::vector< ImageStruct > | attachementAccuDepth |
std::vector< ImageStruct > | attachementAccuColor2 |
std::vector< ImageStruct > | attachementAccuQuality2 |
std::vector< ImageStruct > | attachementAccuDepth2 |
std::vector< std::vector< vk::Framebuffer > > | swapChainFramebuffers |
![]() | |
std::vector< ImageStruct > | depthImages |
vk::Extent2D | renderingExtent |
int | inputImage = 1 |
vk::CommandPool | commandPoolBuffer = nullptr |
vk::Viewport | viewport |
vk::Rect2D | scissor |
Additional Inherited Members | |
![]() | |
void | createCommandPoolForBuffer () |
void | createDepthResources () |
![]() | |
bool | initialized = false |
InputProvider * | input = nullptr |
VulkanContext * | context = nullptr |
VulkanWrapper * | wrapper = nullptr |
vk::Format | depthFormat |
Class that manage the renderPass containing the synthesis and blending steps.
Class that manage the renderPass containing the synthesis and blending steps It also create additional attachments for the rendering
Definition at line 41 of file VulkanRenderPass.h.
VulkanRenderPass::VulkanRenderPass | ( | VulkanContext * | context, |
VulkanWrapper * | wraps | ||
) |
Constructor
Definition at line 50 of file VulkanRenderPass.cpp.
|
overridevirtual |
Clean up ressources
Reimplemented from VulkanRenderPassAbstract.
Definition at line 136 of file VulkanRenderPass.cpp.
std::vector< vk::ImageView > VulkanRenderPass::getAttachmentView | ( | int | swapIndex, |
int | view | ||
) |
Return the vk::ImageView for the framebuffer at swapIndex
for the specified view
Definition at line 848 of file VulkanRenderPass.cpp.
|
overridevirtual |
Return the image that should be the source for the blit operation
Implements VulkanRenderPassAbstract.
Definition at line 876 of file VulkanRenderPass.cpp.
|
overridevirtual |
Return the depth format supported by the application
Implements VulkanRenderPassAbstract.
Definition at line 53 of file VulkanRenderPass.cpp.
|
overridevirtual |
Init process
Reimplemented from VulkanRenderPassAbstract.
Definition at line 57 of file VulkanRenderPass.cpp.
|
overridevirtual |
Return true if the ressources were initialized for this renderpass
Reimplemented from VulkanRenderPassAbstract.
Definition at line 844 of file VulkanRenderPass.cpp.
|
overridevirtual |
Record the command buffer
D(std::cout << "\n record Command Buffer : " << i << std::endl;)
Reimplemented from VulkanRenderPassAbstract.
Definition at line 221 of file VulkanRenderPass.cpp.
|
overridevirtual |
Update buffer
Reimplemented from VulkanRenderPassAbstract.
Definition at line 202 of file VulkanRenderPass.cpp.
std::vector<ImageStruct> VulkanRenderPass::attachementAccuColor |
Color attachments (for blending)
Definition at line 84 of file VulkanRenderPass.h.
std::vector<ImageStruct> VulkanRenderPass::attachementAccuColor2 |
Color attachments 2 (for blending)
Definition at line 90 of file VulkanRenderPass.h.
std::vector<ImageStruct> VulkanRenderPass::attachementAccuDepth |
Depth attachment (for blending)
Definition at line 88 of file VulkanRenderPass.h.
std::vector<ImageStruct> VulkanRenderPass::attachementAccuDepth2 |
Depth attachments 2 (for blending)
Definition at line 94 of file VulkanRenderPass.h.
std::vector<ImageStruct> VulkanRenderPass::attachementAccuQuality |
Quality attachments (for blending)
Definition at line 86 of file VulkanRenderPass.h.
std::vector<ImageStruct> VulkanRenderPass::attachementAccuQuality2 |
Quality attachments 2 (for blending)
Definition at line 92 of file VulkanRenderPass.h.
std::vector<ImageStruct> VulkanRenderPass::attachementColor |
Color attachments (warping output)
Definition at line 74 of file VulkanRenderPass.h.
std::vector<ImageStruct> VulkanRenderPass::attachementDepthFloat |
depth datas (warping output)
Definition at line 76 of file VulkanRenderPass.h.
std::vector<ImageStruct> VulkanRenderPass::attachementQualityFloat |
quality attachments (warping output)
Definition at line 78 of file VulkanRenderPass.h.
std::vector<std::unique_ptr<VulkanPipelineBlending> > VulkanRenderPass::blendingPipelines |
Blending pipeline
Definition at line 66 of file VulkanRenderPass.h.
vk::RenderPass VulkanRenderPass::renderPass |
vk::renderpass object
Definition at line 69 of file VulkanRenderPass.h.
std::vector<std::vector<vk::Framebuffer> > VulkanRenderPass::swapChainFramebuffers |
Framebuffers for the differents swapchain. There is one vector of Framebuffer by view
Definition at line 97 of file VulkanRenderPass.h.
std::vector<std::unique_ptr<VulkanPipelineWarping> > VulkanRenderPass::warpingPipelines |
Warping pipeline
Definition at line 64 of file VulkanRenderPass.h.