KarmaEngine
Game Engine for practical learning and research purposes
Loading...
Searching...
No Matches
KarmaGuiVulkanHandler.h File Reference

This file contains KarmaGuiVulkanHandler class and relevant data structures. More...

#include "krpch.h"
#include "KarmaGui.h"
#include "KarmaGuiInternal.h"
#include "Karma/Renderer/Scene.h"
#include <vulkan/vulkan.h>
Include dependency graph for KarmaGuiVulkanHandler.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Karma::KarmaGui_ImplVulkan_InitInfo
 A data structure for Vulkan's initialization done in KarmaGuiRenderer::KarmaGui_ImplVulkan_Init() More...
 
struct  Karma::KarmaGui_Vulkan_Frame_On_Flight
 Data structure for synchronous operations (relevant to rendering in this context). More...
 
struct  Karma::KarmaGui_ImplVulkanH_ImageFrame
 Helper structure to hold the data needed by one rendering ImageFrame (different from the FRAME_IN_FLIGHT frame!) (Used by multi-viewport features. We gonna just use this.). The number of frames is MinImageCount = m_MinImageCount + 1. More...
 
struct  Karma::KarmaGui_ImplVulkanH_Window
 Helper structure to hold the data needed by one rendering context (Vulkan) of one OS window (Windows, Mac, or Linux). More...
 
struct  Karma::KarmaGui_ImplVulkanH_ImageFrameRenderBuffers
 Reusable buffers used for rendering 1 current in-flight ImageFrame, for KarmaGui_ImplVulkan_RenderDrawData(). Seems like data structure with single instantiation for each of the FrameIndex. More...
 
struct  Karma::KarmaGui_ImplVulkanH_WindowRenderBuffers
 A data structure for packaging of rendering buffers allocated for a current in-flight ImageFrame. More...
 
struct  Karma::KarmaGui_ImplVulkan_ViewportData
 Data relevant to rendering of a Mesa viewport. More...
 
struct  Karma::KarmaGui_ImplVulkan_Image_TextureData
 Data structure containing the Mesa image texture relevant data. For instance, file and folder icons of Content Browser. More...
 
struct  Karma::KarmaGui_ImplVulkan_Data
 Backend data containing stuff for Vulkan renderer for KarmaGui. More...
 
class  Karma::KarmaGuiVulkanHandler
 A class for required Vulkan routines for KarmaGui Vulkan backend. More...
 

Macros

#define KR_MEMALIGN(_OFF, _ALIGN)
 Macro for vulkan's alignment needs.
 
#define KR_MAX(A, B)
 Macro for vulkan's maximum element estimation, out of the supplied two elements.
 

Detailed Description

This file contains KarmaGuiVulkanHandler class and relevant data structures.

Author
Ravi Mohan (the_cowboy)
Version
1.0
Date
August 30, 2022

Macro Definition Documentation

◆ KR_MAX

#define KR_MAX ( A,
B )
Value:
(((A) >= (B)) ? (A) : (B))

Macro for vulkan's maximum element estimation, out of the supplied two elements.

Since
Karma 1.0.0

◆ KR_MEMALIGN

#define KR_MEMALIGN ( _OFF,
_ALIGN )
Value:
(((_OFF) + ((_ALIGN) - 1)) & ~((_ALIGN) - 1))

Macro for vulkan's alignment needs.

Note
Memory align e.g. KR_MEMALIGN(0,4)=0, KR_MEMALIGN(1,4)=4, KR_MEMALIGN(4,4)=4, KR_MEMALIGN(5,4)=8
Since
Karma 1.0.0