bemanitools/src/main/imgui/cimgui_impl_dx9.h
icex2 48cd2bc687 feat: Integrate imgui library
Version 1.91.7 of the imgui library with the cimgui wrapper.

imgui allows us to easily create minimal and powerful UI for
use-cases like in-game overlays or separate tooling.

The additional wrappers cimgui_impl_dx9 and cimgui_impl_win32
were added to provide a full C linkage integration for the rest
of the code base.

Tweaks to the makefile were kept to a minimum but enable
compilation of C++ since imgui is C++ based.

Remark: At this point bemanitools itself is still to be kept a pure
C codebase. Due to the lack of proper module/library management
with the current build system in bemanitools 5, proper separation
of concerns and clean integration with external libraries isn’t
possible with reasonable effort.
2025-02-08 23:11:59 +01:00

16 lines
515 B
C

#ifndef CIMGUI_IMPL_DX9_INCLUDED
#define CIMGUI_IMPL_DX9_INCLUDED
#define CIMGUI_DEFINE_ENUMS_AND_STRUCTS
#include "cimgui.h"
typedef struct IDirect3DDevice9 IDirect3DDevice9;
CIMGUI_API bool igImplDX9_Init(IDirect3DDevice9* device);
CIMGUI_API void igImplDX9_Shutdown();
CIMGUI_API void igImplDX9_NewFrame();
CIMGUI_API void igImplDX9_RenderDrawData(ImDrawData* draw_data);
CIMGUI_API bool igImplDX9_CreateDeviceObjects();
CIMGUI_API void igImplDX9_InvalidateDeviceObjects();
#endif // CIMGUI_IMPL_DX9_INCLUDED