Chronos 0.0
A advanced 2D rendering and animation system
Loading...
Searching...
No Matches
helper.hpp File Reference

Contains various common functions used by other classes in the Engine namespace. More...

#include <optional>
#include "swapchain.hpp"
Include dependency graph for helper.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Chronos::Engine::QueueFamilyIndices
 This is used to check if a given familty supports graphics and presentation. More...
 

Namespaces

namespace  Chronos
 
namespace  Chronos::Engine
 

Functions

VkCommandBuffer Chronos::Engine::beginSingleTimeCommands (VkCommandPool commandPool, VkDevice device)
 Begins recording of a command buffer that will be used once.
 
void Chronos::Engine::endSingleTimeCommands (VkCommandBuffer *commandBuffer, Chronos::Engine::Device device, VkCommandPool commandPool)
 Ends recording of single time command buffer and destroys it.
 
uint32_t Chronos::Engine::findMemoryType (uint32_t typeFilter, VkMemoryPropertyFlags properties, VkPhysicalDevice physicalDevice)
 Finds suitable memory type for given requrements.
 
void Chronos::Engine::createBuffer (Chronos::Engine::Device device, VkDeviceSize size, VkBufferUsageFlags usage, VkMemoryPropertyFlags properties, VkBuffer *buffer, VkDeviceMemory *bufferMemory)
 Creates a buffer of a given size, usage and properties.
 
void Chronos::Engine::copyBuffer (Chronos::Engine::Device device, VkBuffer srcBuffer, VkBuffer dstBuffer, VkDeviceSize size, VkCommandPool commandPool)
 Copies data from one buffer to another.
 
QueueFamilyIndices Chronos::Engine::findQueueFamilies (VkPhysicalDevice device, VkSurfaceKHR surface)
 Gets the indices of the needed queue families.
 
VkCommandPool Chronos::Engine::createCommandPool (Chronos::Engine::Device device, VkSurfaceKHR surface)
 Creates a command pool for a given device and surface.
 
VkRenderPass Chronos::Engine::createRenderPass (Chronos::Engine::Device device, Chronos::Engine::SwapChain swapChain, VkImageLayout initalLayout, VkImageLayout finalLayout, VkImageLayout msaaFinalLayout, bool msaa, bool clearFramebuffer, bool dependency)
 Creates a render pass.
 
std::vector< VkFramebuffer > Chronos::Engine::createFramebuffer (Chronos::Engine::Device device, Chronos::Engine::SwapChain swapChain, VkRenderPass renderPass, bool msaa)
 Creates a set of framebuffers for use.
 
std::vector< VkCommandBuffer > Chronos::Engine::createCommandBuffer (Chronos::Engine::Device device, Chronos::Engine::SwapChain swapChain, VkCommandPool commandPool)
 Creates a set of command buffers for use.
 

Detailed Description

Contains various common functions used by other classes in the Engine namespace.

Definition in file helper.hpp.