26@class MTLRenderPassDescriptor;
27@protocol MTLDevice, MTLCommandBuffer, MTLRenderCommandEncoder;
29IMGUI_IMPL_API
bool ImGui_ImplMetal_Init(id<MTLDevice> device);
30IMGUI_IMPL_API
void ImGui_ImplMetal_Shutdown();
31IMGUI_IMPL_API
void ImGui_ImplMetal_NewFrame(MTLRenderPassDescriptor* renderPassDescriptor);
32IMGUI_IMPL_API
void ImGui_ImplMetal_RenderDrawData(
ImDrawData* drawData,
33 id<MTLCommandBuffer> commandBuffer,
34 id<MTLRenderCommandEncoder> commandEncoder);
37IMGUI_IMPL_API
bool ImGui_ImplMetal_CreateFontsTexture(id<MTLDevice> device);
38IMGUI_IMPL_API
void ImGui_ImplMetal_DestroyFontsTexture();
39IMGUI_IMPL_API
bool ImGui_ImplMetal_CreateDeviceObjects(id<MTLDevice> device);
40IMGUI_IMPL_API
void ImGui_ImplMetal_DestroyDeviceObjects();
51#ifdef IMGUI_IMPL_METAL_CPP
52#include <Metal/Metal.hpp>
55IMGUI_IMPL_API
bool ImGui_ImplMetal_Init(MTL::Device* device);
56IMGUI_IMPL_API
void ImGui_ImplMetal_Shutdown();
57IMGUI_IMPL_API
void ImGui_ImplMetal_NewFrame(MTL::RenderPassDescriptor* renderPassDescriptor);
58IMGUI_IMPL_API
void ImGui_ImplMetal_RenderDrawData(
ImDrawData* draw_data,
59 MTL::CommandBuffer* commandBuffer,
60 MTL::RenderCommandEncoder* commandEncoder);
63IMGUI_IMPL_API
bool ImGui_ImplMetal_CreateFontsTexture(MTL::Device* device);
64IMGUI_IMPL_API
void ImGui_ImplMetal_DestroyFontsTexture();
65IMGUI_IMPL_API
bool ImGui_ImplMetal_CreateDeviceObjects(MTL::Device* device);
66IMGUI_IMPL_API
void ImGui_ImplMetal_DestroyDeviceObjects();