// clang-format off #ifdef CIMGUI_USE_GLFW typedef struct GLFWwindow GLFWwindow; typedef struct GLFWmonitor GLFWmonitor; struct GLFWwindow; struct GLFWmonitor;CIMGUI_API bool ImGui_ImplGlfw_InitForOpenGL(GLFWwindow* window,bool install_callbacks); CIMGUI_API bool ImGui_ImplGlfw_InitForVulkan(GLFWwindow* window,bool install_callbacks); CIMGUI_API bool ImGui_ImplGlfw_InitForOther(GLFWwindow* window,bool install_callbacks); CIMGUI_API void ImGui_ImplGlfw_Shutdown(void); CIMGUI_API void ImGui_ImplGlfw_NewFrame(void); CIMGUI_API void ImGui_ImplGlfw_InstallCallbacks(GLFWwindow* window); CIMGUI_API void ImGui_ImplGlfw_RestoreCallbacks(GLFWwindow* window); CIMGUI_API void ImGui_ImplGlfw_SetCallbacksChainForAllWindows(bool chain_for_all_windows); CIMGUI_API void ImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window,int focused); CIMGUI_API void ImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window,int entered); CIMGUI_API void ImGui_ImplGlfw_CursorPosCallback(GLFWwindow* window,double x,double y); CIMGUI_API void ImGui_ImplGlfw_MouseButtonCallback(GLFWwindow* window,int button,int action,int mods); CIMGUI_API void ImGui_ImplGlfw_ScrollCallback(GLFWwindow* window,double xoffset,double yoffset); CIMGUI_API void ImGui_ImplGlfw_KeyCallback(GLFWwindow* window,int key,int scancode,int action,int mods); CIMGUI_API void ImGui_ImplGlfw_CharCallback(GLFWwindow* window,unsigned int c); CIMGUI_API void ImGui_ImplGlfw_MonitorCallback(GLFWmonitor* monitor,int event); CIMGUI_API void ImGui_ImplGlfw_Sleep(int milliseconds); #endif #ifdef CIMGUI_USE_OPENGL3 CIMGUI_API bool ImGui_ImplOpenGL3_Init(const char* glsl_version); CIMGUI_API void ImGui_ImplOpenGL3_Shutdown(void); CIMGUI_API void ImGui_ImplOpenGL3_NewFrame(void); CIMGUI_API void ImGui_ImplOpenGL3_RenderDrawData(ImDrawData* draw_data); CIMGUI_API bool ImGui_ImplOpenGL3_CreateFontsTexture(void); CIMGUI_API void ImGui_ImplOpenGL3_DestroyFontsTexture(void); CIMGUI_API bool ImGui_ImplOpenGL3_CreateDeviceObjects(void); CIMGUI_API void ImGui_ImplOpenGL3_DestroyDeviceObjects(void); #endif #ifdef CIMGUI_USE_OPENGL2 CIMGUI_API bool ImGui_ImplOpenGL2_Init(void); CIMGUI_API void ImGui_ImplOpenGL2_Shutdown(void); CIMGUI_API void ImGui_ImplOpenGL2_NewFrame(void); CIMGUI_API void ImGui_ImplOpenGL2_RenderDrawData(ImDrawData* draw_data); CIMGUI_API bool ImGui_ImplOpenGL2_CreateFontsTexture(void); CIMGUI_API void ImGui_ImplOpenGL2_DestroyFontsTexture(void); CIMGUI_API bool ImGui_ImplOpenGL2_CreateDeviceObjects(void); CIMGUI_API void ImGui_ImplOpenGL2_DestroyDeviceObjects(void); #endif #ifdef CIMGUI_USE_SDL2 typedef struct SDL_Window SDL_Window; typedef struct SDL_Renderer SDL_Renderer; typedef struct _SDL_GameController _SDL_GameController; struct SDL_Window; struct SDL_Renderer; struct _SDL_GameController; typedef union SDL_Event SDL_Event; typedef enum { ImGui_ImplSDL2_GamepadMode_AutoFirst, ImGui_ImplSDL2_GamepadMode_AutoAll, ImGui_ImplSDL2_GamepadMode_Manual }ImGui_ImplSDL2_GamepadMode;CIMGUI_API bool ImGui_ImplSDL2_InitForOpenGL(SDL_Window* window,void* sdl_gl_context); CIMGUI_API bool ImGui_ImplSDL2_InitForVulkan(SDL_Window* window); CIMGUI_API bool ImGui_ImplSDL2_InitForD3D(SDL_Window* window); CIMGUI_API bool ImGui_ImplSDL2_InitForMetal(SDL_Window* window); CIMGUI_API bool ImGui_ImplSDL2_InitForSDLRenderer(SDL_Window* window,SDL_Renderer* renderer); CIMGUI_API bool ImGui_ImplSDLRenderer2_Init(SDL_Renderer* renderer); CIMGUI_API bool ImGui_ImplSDL2_InitForOther(SDL_Window* window); CIMGUI_API void ImGui_ImplSDL2_Shutdown(void); CIMGUI_API void ImGui_ImplSDLRenderer2_Shutdown(void); CIMGUI_API void ImGui_ImplSDLRenderer2_NewFrame(void); CIMGUI_API void ImGui_ImplSDL2_NewFrame(void); CIMGUI_API bool ImGui_ImplSDL2_ProcessEvent(const SDL_Event* event); CIMGUI_API void ImGui_ImplSDLRenderer2_RenderDrawData(ImDrawData* draw_data, SDL_Renderer* renderer); CIMGUI_API void ImGui_ImplSDL2_SetGamepadMode(ImGui_ImplSDL2_GamepadMode mode,struct _SDL_GameController** manual_gamepads_array,int manual_gamepads_count); #endif