HoviTron Video Pipeline
VulkanPipelineWarping.h
Go to the documentation of this file.
1/* ----------------------
2* Copyright 2023 Université Libre de Bruxelles(ULB), Universidad Politécnica de Madrid(UPM), CREAL, Deutsches Zentrum für Luft - und Raumfahrt(DLR)
3
4* Licensed under the Apache License, Version 2.0 (the "License");
5* you may not use this file except in compliance with the License.
6* You may obtain a copy of the License at < http://www.apache.org/licenses/LICENSE-2.0>
7
8* Unless required by applicable law or agreed to in writing, software
9* distributed under the License is distributed on an "AS IS" BASIS,
10* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11* See the License for the specific language governing permissionsand
12* limitations under the License.
13---------------------- */
14
15/*****************************************************************/
20#pragma once
21
22#include "commonVulkan.h"
25
26class VulkanContext;
28class Shader;
29class InputProvider;
30
38public:
42 void init();
44 void cleanUp();
48 void update(std::span<InputProvider::StreamFrameInfo> infos, int view);
49
50private:
52 void createGraphicsPipeline();
54 vk::Sampler colorSampler;
56 vk::Sampler depthSampler;
57};
58
Class that manages the buffer for the warping step.
file that contains the abstract class for common code between the two pipelines (blending and warping...
Abstract interface around getting source views parameters and data.
Definition: InputProvider.h:35
Class that represents SPIR-V shader.
Definition: Shader.h:42
class that manages tasks related to Vulkan context (Vulkan Instance, Vulkan Physical device,...
Definition: VulkanContext.h:59
The abstract class that encapsulate vk::Pipeline object and contains common code between the two pipe...
VulkanRenderPass * renderPass
Class that manages the graphic pipeline for the warping.
void update(std::span< InputProvider::StreamFrameInfo > infos, int view)
Class that manage the renderPass containing the synthesis and blending steps.
Class that manages the classes related to Vulkan code and act as a wrapper around them.
Definition: VulkanWrapper.h:66
file that contains the common include for the Vulkan part