Backlog/engine/vkImgui/cimgui/imgui/cimgui_compat.h

51 lines
1.9 KiB
C

#pragma once
#include <vulkan/vulkan.h>
#ifdef __cplusplus
extern "C" {
#endif
struct ImGui_ImplVulkan_InitInfo
{
VkInstance Instance;
VkPhysicalDevice PhysicalDevice;
VkDevice Device;
uint32_t QueueFamily;
VkQueue Queue;
VkPipelineCache PipelineCache;
VkDescriptorPool DescriptorPool;
uint32_t Subpass;
uint32_t MinImageCount; // >= 2
uint32_t ImageCount; // >= MinImageCount
VkSampleCountFlagBits MSAASamples; // >= VK_SAMPLE_COUNT_1_BIT (0 -> default to VK_SAMPLE_COUNT_1_BIT)
const VkAllocationCallbacks* Allocator;
void (*CheckVkResultFn)(VkResult err);
};
typedef struct ImGui_ImplVulkan_InitInfo ImGui_ImplVulkan_InitInfo;
// Called by user code
//bool cImGui_ImplVulkan_Init(ImGui_ImplVulkan_InitInfo* info, VkRenderPass render_pass);
bool cImGui_vk_Init(ImGui_ImplVulkan_InitInfo* info, VkRenderPass render_pass);
void cImGui_vk_Shutdown();
void cImGui_vk_NewFrame();
void cImGui_vk_RenderDrawData(ImDrawData* draw_data, VkCommandBuffer command_buffer, VkPipeline pipeline);
bool cImGui_vk_CreateFontsTexture(VkCommandBuffer command_buffer);
void cImGui_vk_DestroyFontUploadObjects();
void cImGui_vk_SetMinImageCount(uint32_t min_image_count); // To override MinImageCount after initialization (e.g. if swap chain is recreated)
void SetupImguiColors();
void setFontScale(int newWidth, int newHeight);
void cimgui_vk_PrepareSharedData() ;
void cimgui_vk_UploadSharedData(int frameIndex, ImDrawData* drawData);
ImDrawData* cimgui_vk_GetSharedData(int frameIndex);
void cimgui_vk_ReleaseSharedData(int frameIndex);
#ifdef __cplusplus
}
#endif