HoviTron Video Pipeline
BuffersControllerAbstract.cpp
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
16
18#include "VulkanContext.h"
19#include "VulkanRenderPass.h"
22
23
24void BuffersController::copyBuffer(vk::Buffer srcBuffer, vk::Buffer dstBuffer, vk::DeviceSize size)
25{
26 vk::CommandBuffer commandBuffer = beginSingleTimeCommands(context, renderpass->commandPoolBuffer);
27
28 vk::BufferCopy copyRegion(0, 0, size);
29 commandBuffer.copyBuffer(srcBuffer, dstBuffer, 1, &copyRegion);
30
31 endSingleTimeCommands(context, renderpass->commandPoolBuffer, commandBuffer);
32
33}
Abstract class that contains common functionnalities to manage the buffer for synthesis and blending ...
File that contain the VulkanContext class to manage Vulkan Instance, Physical device,...
Class that contains helper functions for Vulkan.
file that contains the abstract class for common code between the two pipelines (blending and warping...
file that contains the class that manage the renderPass containing the synthesis and blending steps
void copyBuffer(vk::Buffer srcBuffer, vk::Buffer dstBuffer, vk::DeviceSize size)
VulkanRenderPass * renderpass