Compare commits

..

31 Commits

Author SHA1 Message Date
Sven Balzer 963ccc4ec8 change rendering offsets for character, character shadow and trees
buildbot/windows Build done.
buildbot/linux Build done.
change default camera tilt
2026-08-05 21:50:13 +02:00
Sven Balzer 4c158f25f0 add trees into the game
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-05 20:48:57 +02:00
Sven Balzer 6a984b40d9 remove vertex_buffer and index_buffer for characters and character shadows
refactor world shader vertex position calculation
2026-08-05 20:48:57 +02:00
Ammerhai 74d55cb087 update female character sprite sheet
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-05 20:39:59 +02:00
Ammerhai 8f277c4d08 add correct tree angle
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-05 20:39:09 +02:00
Sven Balzer 3366008d59 replace placeholder character with female
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-03 18:36:40 +02:00
Ammerhai e49683eb7b update tree again
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-03 18:34:49 +02:00
Ammerhai d04e231f4d update tree
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-03 18:28:41 +02:00
Ammerhai 198ed44bbf add character female
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-03 18:28:14 +02:00
Sven Balzer 7fe5419b02 fix leak of frame_fence in sdlgpu renderer
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-03 17:32:57 +02:00
Sven Balzer 6aa530daea rename basic shader to character
buildbot/windows Build done.
buildbot/linux Build done.
add character shadow
make animation play twice as fast when sprinting
2026-08-03 13:32:52 +02:00
Ammerhai 4f4ec3cfd5 remove map layout
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-02 13:20:08 +02:00
Sven Balzer e5cc22cb95 also respect arrow keys for continuous movement
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-02 13:06:37 +02:00
Ammerhai b9eb121663 add last tile and tree
buildbot/windows Build done.
buildbot/linux Build done.
add water starter

#8
2026-08-02 12:56:13 +02:00
Sven Balzer f72ca9def5 add basic animation
buildbot/windows Build done.
buildbot/linux Build done.
2026-08-02 12:40:24 +02:00
Sven Balzer 70fac5bd72 fix clamping character movement to map boundaries 2026-08-02 10:57:59 +02:00
Ammerhai ab79875263 remove placeholder tiles
buildbot/windows Build done.
#8
2026-08-01 20:23:42 +02:00
Ammerhai 3a012fc564 fix incorrect tile corner infos
#8
2026-08-01 20:09:47 +02:00
Ammerhai bd727a6505 add correct tile values
#8
2026-08-01 19:39:07 +02:00
Ammerhai da801d1937 add region map day/night
add first two starter mons

- fire/feuer
- grass/pflanze
2026-08-01 19:38:10 +02:00
Ammerhai 1b03990f92 add new tiles and change paths to new ones
#8
2026-08-01 19:37:41 +02:00
Sven Balzer d2b472548f move per_frame and view_projection matrix into shared file 2026-08-01 13:36:30 +02:00
Sven Balzer 0c7ec7299e basic smooth movement 2026-08-01 12:37:53 +02:00
Sven Balzer f564c14354 change grid shader primitive to line from triangle 2026-08-01 09:37:43 +02:00
Sven Balzer 08b8b397e2 fix explicitly changing tiles 2026-08-01 09:07:45 +02:00
Sven Balzer e6fa28a18f make shaders be compiled by cmake instead of a script 2026-08-01 09:07:01 +02:00
Ammerhai 1ff65cd811 update map 2026-07-28 18:44:26 +02:00
Sven Balzer f3dcd26ce7 move framebuffer management from the renderer to the app 2026-07-03 14:42:20 +02:00
Sven Balzer 18c1b3639c remove old shaders 2026-07-03 14:23:55 +02:00
Sven Balzer e7ad1d36ba add sdlgpu renderer 2026-07-03 14:19:41 +02:00
Sven Balzer aaa5b2078b add renderer abstraction 2026-07-03 10:14:10 +02:00
182 changed files with 1854969 additions and 1439 deletions
+77 -4
View File
@@ -5,6 +5,7 @@ set(CMAKE_C_STANDARD 23)
set(CMAKE_C_EXTENSIONS OFF)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_EXTENSIONS OFF)
set(CMAKE_DISABLE_PRECOMPILE_HEADERS ON)
option(TRACY_ENABLE "Enable Tracy profiling" OFF)
@@ -46,14 +47,40 @@ add_library(imgui STATIC
libs/imgui/imgui_tables.cpp
libs/imgui/imgui_widgets.cpp
libs/imgui/backends/imgui_impl_sdl3.cpp
libs/imgui/backends/imgui_impl_wgpu.cpp
libs/dcimgui/dcimgui.cpp
libs/dcimgui/dcimgui_internal.cpp
libs/dcimgui/backends/dcimgui_impl_sdl3.cpp
)
target_include_directories(imgui PUBLIC
libs/imgui
libs/dcimgui
libs/imgui/backends
)
target_link_libraries(imgui PRIVATE SDL3::SDL3 wgpu)
target_compile_definitions(imgui PRIVATE IMGUI_IMPL_WEBGPU_BACKEND_WGPU=1)
target_link_libraries(imgui PRIVATE SDL3::SDL3)
# Dear ImGui WGPU backend
add_library(imgui_wgpu STATIC
libs/imgui/backends/imgui_impl_wgpu.cpp
libs/dcimgui/backends/dcimgui_impl_wgpu.cpp
)
target_include_directories(imgui_wgpu PUBLIC
libs/imgui/backends
libs/dcimgui/backends
)
target_link_libraries(imgui_wgpu PRIVATE imgui wgpu)
target_compile_definitions(imgui_wgpu PRIVATE IMGUI_IMPL_WEBGPU_BACKEND_WGPU=1)
# Dear ImGui SDLGPU backend
add_library(imgui_sdlgpu STATIC
libs/imgui/backends/imgui_impl_sdlgpu3.cpp
libs/dcimgui/backends/dcimgui_impl_sdlgpu3.cpp
)
target_include_directories(imgui_sdlgpu PUBLIC
libs/imgui/backends
libs/dcimgui/backends
)
target_link_libraries(imgui_sdlgpu PRIVATE imgui SDL3::SDL3)
# stb_image
add_library(stb_image STATIC libs/stb/stb_image.c)
@@ -63,10 +90,35 @@ target_include_directories(stb_image INTERFACE libs/stb)
option(TRACY_ONLY_LOCALHOST "" ON)
add_subdirectory(libs/tracy)
# shaders
find_program(SLANGC_EXECUTABLE slangc)
set(SHADERS_SPV "")
set(SHADERS_WGSL "")
function(add_shader name)
if(SLANGC_EXECUTABLE)
add_custom_command(OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/src/shaders/spirv/${name}.spv" DEPFILE "${CMAKE_CURRENT_BINARY_DIR}/${name}-spv.dep" COMMAND "${SLANGC_EXECUTABLE}" -depfile "${CMAKE_CURRENT_BINARY_DIR}/${name}-spv.dep" "${CMAKE_CURRENT_SOURCE_DIR}/src/shaders/src/${name}.slang" -o "${CMAKE_CURRENT_SOURCE_DIR}/src/shaders/spirv/${name}.spv" -target spirv -profile spirv_1_0)
add_custom_command(OUTPUT "${CMAKE_CURRENT_SOURCE_DIR}/src/shaders/wgsl/${name}.wgsl" DEPFILE "${CMAKE_CURRENT_BINARY_DIR}/${name}-wgsl.dep" COMMAND "${SLANGC_EXECUTABLE}" -depfile "${CMAKE_CURRENT_BINARY_DIR}/${name}-wgsl.dep" "${CMAKE_CURRENT_SOURCE_DIR}/src/shaders/src/${name}.slang" -o "${CMAKE_CURRENT_SOURCE_DIR}/src/shaders/wgsl/${name}.wgsl" -target wgsl -D__wgsl__)
endif()
set(SHADERS_SPV ${SHADERS_SPV} "${CMAKE_CURRENT_SOURCE_DIR}/src/shaders/spirv/${name}.spv" PARENT_SCOPE)
set(SHADERS_WGSL ${SHADERS_WGSL} "${CMAKE_CURRENT_SOURCE_DIR}/src/shaders/wgsl/${name}.wgsl" PARENT_SCOPE)
endfunction()
add_shader(character)
add_shader(character_shadow)
add_shader(world)
add_shader(tree)
add_shader(grid)
add_custom_target(shaders-spv DEPENDS ${SHADERS_SPV})
add_custom_target(shaders-wgsl DEPENDS ${SHADERS_WGSL})
# game
add_executable(mikemon
src/smol-atlas.cpp
src/change_directory.c
src/shaders/shaders.c
src/renderer_wgpu.c
src/main.cpp
)
target_link_libraries(mikemon
@@ -76,6 +128,27 @@ target_link_libraries(mikemon
SDL3_mixer::SDL3_mixer
stb_image
imgui
imgui_wgpu
TracyClient
wgpu
)
add_dependencies(mikemon shaders-wgsl)
add_executable(mikemon-sdlgpu
src/smol-atlas.cpp
src/change_directory.c
src/renderer_sdlgpu.c
src/main.cpp
)
target_link_libraries(mikemon-sdlgpu
PRIVATE
glm
SDL3::SDL3
SDL3_mixer::SDL3_mixer
stb_image
imgui
imgui_sdlgpu
TracyClient
wgpu
)
add_dependencies(mikemon-sdlgpu shaders-spv)
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 289 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 444 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 373 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 394 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 424 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 429 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 397 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 415 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 449 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 379 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 431 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 388 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 283 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 380 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 320 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 284 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 484 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 337 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 411 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 490 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 523 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 522 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 487 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 505 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 570 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 433 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 533 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 397 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 467 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 346 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.
+21
View File
@@ -0,0 +1,21 @@
The MIT License (MIT)
Copyright (c) 2014-2026 Omar Cornut
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
@@ -0,0 +1,142 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_allegro5.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_allegro5.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplAllegro5_Init(cimgui::ALLEGRO_DISPLAY* display)
{
return ::ImGui_ImplAllegro5_Init(reinterpret_cast<::ALLEGRO_DISPLAY*>(display));
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_Shutdown(void)
{
::ImGui_ImplAllegro5_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_NewFrame(void)
{
::ImGui_ImplAllegro5_NewFrame();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_RenderDrawData(cimgui::ImDrawData* draw_data)
{
::ImGui_ImplAllegro5_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplAllegro5_ProcessEvent(cimgui::ALLEGRO_EVENT* event)
{
return ::ImGui_ImplAllegro5_ProcessEvent(reinterpret_cast<::ALLEGRO_EVENT*>(event));
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_SetDisplay(cimgui::ALLEGRO_DISPLAY* display)
{
::ImGui_ImplAllegro5_SetDisplay(reinterpret_cast<::ALLEGRO_DISPLAY*>(display));
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplAllegro5_CreateDeviceObjects(void)
{
return ::ImGui_ImplAllegro5_CreateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_InvalidateDeviceObjects(void)
{
::ImGui_ImplAllegro5_InvalidateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplAllegro5_UpdateTexture(cimgui::ImTextureData* tex)
{
::ImGui_ImplAllegro5_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
}
#endif // #ifndef IMGUI_DISABLE
@@ -0,0 +1,62 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Renderer + Platform Backend for Allegro 5
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// (Info: Allegro 5 is a cross-platform general purpose library for handling windows, inputs, graphics, etc.)
// Implemented features:
// [X] Renderer: User texture binding. Use 'ALLEGRO_BITMAP*' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy ALLEGRO_KEY_* values are obsolete since 1.87 and not supported since 1.91.5]
// [X] Platform: Clipboard support (from Allegro 5.1.12).
// [X] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors). Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'.
// Missing features or Issues:
// [ ] Renderer: The renderer is suboptimal as we need to unindex our buffers and convert vertices manually.
// [ ] Platform: Missing gamepad support.
// [ ] Renderer: Multi-viewport support (multiple windows).
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include "dcimgui.h"
#ifndef IMGUI_DISABLE
typedef struct ALLEGRO_DISPLAY_t ALLEGRO_DISPLAY;
typedef union ALLEGRO_EVENT_t ALLEGRO_EVENT;
typedef struct ImDrawData_t ImDrawData;
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
CIMGUI_IMPL_API bool cImGui_ImplAllegro5_Init(ALLEGRO_DISPLAY* display);
CIMGUI_IMPL_API void cImGui_ImplAllegro5_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplAllegro5_NewFrame(void);
CIMGUI_IMPL_API void cImGui_ImplAllegro5_RenderDrawData(ImDrawData* draw_data);
CIMGUI_IMPL_API bool cImGui_ImplAllegro5_ProcessEvent(ALLEGRO_EVENT* event);
CIMGUI_IMPL_API void cImGui_ImplAllegro5_SetDisplay(ALLEGRO_DISPLAY* display);
// Use if you want to reset your rendering device without losing Dear ImGui state.
CIMGUI_IMPL_API bool cImGui_ImplAllegro5_CreateDeviceObjects(void);
CIMGUI_IMPL_API void cImGui_ImplAllegro5_InvalidateDeviceObjects(void);
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
CIMGUI_IMPL_API void cImGui_ImplAllegro5_UpdateTexture(ImTextureData* tex);
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
@@ -0,0 +1,382 @@
{
"defines": [],
"enums": [],
"typedefs": [
{
"name": "ImDrawIdx",
"type": {
"declaration": "unsigned short",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_short"
}
},
"comments": {
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
},
"conditionals": [
{
"condition": "ifndef",
"expression": "ImDrawIdx"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h"
}
}
],
"structs": [
{
"name": "ALLEGRO_DISPLAY",
"original_fully_qualified_name": "ALLEGRO_DISPLAY",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 27
}
},
{
"name": "ALLEGRO_EVENT",
"original_fully_qualified_name": "ALLEGRO_EVENT",
"kind": "union",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 28
}
},
{
"name": "ImDrawData",
"original_fully_qualified_name": "ImDrawData",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 1
}
}
],
"functions": [
{
"name": "cImGui_ImplAllegro5_Init",
"original_fully_qualified_name": "ImGui_ImplAllegro5_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [
{
"name": "display",
"type": {
"declaration": "ALLEGRO_DISPLAY*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ALLEGRO_DISPLAY"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 31
}
},
{
"name": "cImGui_ImplAllegro5_Shutdown",
"original_fully_qualified_name": "ImGui_ImplAllegro5_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 32
}
},
{
"name": "cImGui_ImplAllegro5_NewFrame",
"original_fully_qualified_name": "ImGui_ImplAllegro5_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 33
}
},
{
"name": "cImGui_ImplAllegro5_RenderDrawData",
"original_fully_qualified_name": "ImGui_ImplAllegro5_RenderDrawData",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "draw_data",
"type": {
"declaration": "ImDrawData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImDrawData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 34
}
},
{
"name": "cImGui_ImplAllegro5_ProcessEvent",
"original_fully_qualified_name": "ImGui_ImplAllegro5_ProcessEvent",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [
{
"name": "event",
"type": {
"declaration": "ALLEGRO_EVENT*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ALLEGRO_EVENT"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 35
}
},
{
"name": "cImGui_ImplAllegro5_SetDisplay",
"original_fully_qualified_name": "ImGui_ImplAllegro5_SetDisplay",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "display",
"type": {
"declaration": "ALLEGRO_DISPLAY*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ALLEGRO_DISPLAY"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 36
}
},
{
"name": "cImGui_ImplAllegro5_CreateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplAllegro5_CreateDeviceObjects",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Use if you want to reset your rendering device without losing Dear ImGui state."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 39
}
},
{
"name": "cImGui_ImplAllegro5_InvalidateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplAllegro5_InvalidateDeviceObjects",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 40
}
},
{
"name": "cImGui_ImplAllegro5_UpdateTexture",
"original_fully_qualified_name": "ImGui_ImplAllegro5_UpdateTexture",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "tex",
"type": {
"declaration": "ImTextureData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImTextureData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_allegro5.h",
"line": 43
}
}
]
}
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,117 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_android.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_android.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplAndroid_Init(cimgui::ANativeWindow* window)
{
return ::ImGui_ImplAndroid_Init(reinterpret_cast<::ANativeWindow*>(window));
}
CIMGUI_IMPL_API int32_t cimgui::cImGui_ImplAndroid_HandleInputEvent(const cimgui::AInputEvent* input_event)
{
return ::ImGui_ImplAndroid_HandleInputEvent(reinterpret_cast<const ::AInputEvent*>(input_event));
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplAndroid_Shutdown(void)
{
::ImGui_ImplAndroid_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplAndroid_NewFrame(void)
{
::ImGui_ImplAndroid_NewFrame();
}
#endif // #ifndef IMGUI_DISABLE
@@ -0,0 +1,55 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Platform Binding for Android native app
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// This needs to be used along with the OpenGL 3 Renderer (imgui_impl_opengl3)
// Implemented features:
// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy AKEYCODE_* values are obsolete since 1.87 and not supported since 1.91.5]
// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen.
// Missing features or Issues:
// [ ] Platform: Clipboard support.
// [ ] Platform: Gamepad support.
// [ ] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors). Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'. FIXME: Check if this is even possible with Android.
// [ ] Platform: Multi-viewport support (multiple windows). Not meaningful on Android.
// Important:
// - Consider using SDL or GLFW backend on Android, which will be more full-featured than this.
// - FIXME: On-screen keyboard currently needs to be enabled by the application (see examples/ and issue #3446)
// - FIXME: Unicode character inputs needs to be passed by Dear ImGui by the application (see examples/ and issue #3446)
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include "dcimgui.h"
#ifndef IMGUI_DISABLE
typedef struct ANativeWindow_t ANativeWindow;
typedef struct AInputEvent_t AInputEvent;
typedef struct ImDrawData_t ImDrawData;
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
CIMGUI_IMPL_API bool cImGui_ImplAndroid_Init(ANativeWindow* window);
CIMGUI_IMPL_API int32_t cImGui_ImplAndroid_HandleInputEvent(const AInputEvent* input_event);
CIMGUI_IMPL_API void cImGui_ImplAndroid_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplAndroid_NewFrame(void);
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
@@ -0,0 +1,209 @@
{
"defines": [],
"enums": [],
"typedefs": [
{
"name": "ImDrawIdx",
"type": {
"declaration": "unsigned short",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_short"
}
},
"comments": {
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
},
"conditionals": [
{
"condition": "ifndef",
"expression": "ImDrawIdx"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_android.h"
}
}
],
"structs": [
{
"name": "ANativeWindow",
"original_fully_qualified_name": "ANativeWindow",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_android.h",
"line": 29
}
},
{
"name": "AInputEvent",
"original_fully_qualified_name": "AInputEvent",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_android.h",
"line": 30
}
},
{
"name": "ImDrawData",
"original_fully_qualified_name": "ImDrawData",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_android.h",
"line": 1
}
}
],
"functions": [
{
"name": "cImGui_ImplAndroid_Init",
"original_fully_qualified_name": "ImGui_ImplAndroid_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [
{
"name": "window",
"type": {
"declaration": "ANativeWindow*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ANativeWindow"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_android.h",
"line": 33
}
},
{
"name": "cImGui_ImplAndroid_HandleInputEvent",
"original_fully_qualified_name": "ImGui_ImplAndroid_HandleInputEvent",
"return_type": {
"declaration": "int32_t",
"description": {
"kind": "User",
"name": "int32_t"
}
},
"arguments": [
{
"name": "input_event",
"type": {
"declaration": "const AInputEvent*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "AInputEvent",
"storage_classes": [
"const"
]
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_android.h",
"line": 34
}
},
{
"name": "cImGui_ImplAndroid_Shutdown",
"original_fully_qualified_name": "ImGui_ImplAndroid_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_android.h",
"line": 35
}
},
{
"name": "cImGui_ImplAndroid_NewFrame",
"original_fully_qualified_name": "ImGui_ImplAndroid_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_android.h",
"line": 36
}
}
]
}
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
+133
View File
@@ -0,0 +1,133 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_dx10.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_dx10.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX10_Init(cimgui::ID3D10Device* device)
{
return ::ImGui_ImplDX10_Init(reinterpret_cast<::ID3D10Device*>(device));
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_Shutdown(void)
{
::ImGui_ImplDX10_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_NewFrame(void)
{
::ImGui_ImplDX10_NewFrame();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_RenderDrawData(cimgui::ImDrawData* draw_data)
{
::ImGui_ImplDX10_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX10_CreateDeviceObjects(void)
{
return ::ImGui_ImplDX10_CreateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_InvalidateDeviceObjects(void)
{
::ImGui_ImplDX10_InvalidateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX10_UpdateTexture(cimgui::ImTextureData* tex)
{
::ImGui_ImplDX10_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
}
#endif // #ifndef IMGUI_DISABLE
+69
View File
@@ -0,0 +1,69 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Renderer Backend for DirectX10
// Auto-generated forward declarations for C header
typedef struct ImGui_ImplDX10_RenderState_t ImGui_ImplDX10_RenderState;
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// This needs to be used along with a Platform Backend (e.g. Win32)
// Implemented features:
// [X] Renderer: User texture binding. Use 'ID3D10ShaderResourceView*' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include "dcimgui.h"
#ifndef IMGUI_DISABLE
typedef struct ID3D10Device_t ID3D10Device;
typedef struct ID3D10SamplerState_t ID3D10SamplerState;
typedef struct ID3D10Buffer_t ID3D10Buffer;
typedef struct ImDrawData_t ImDrawData;
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
CIMGUI_IMPL_API bool cImGui_ImplDX10_Init(ID3D10Device* device);
CIMGUI_IMPL_API void cImGui_ImplDX10_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplDX10_NewFrame(void);
CIMGUI_IMPL_API void cImGui_ImplDX10_RenderDrawData(ImDrawData* draw_data);
// Use if you want to reset your rendering device without losing Dear ImGui state.
CIMGUI_IMPL_API bool cImGui_ImplDX10_CreateDeviceObjects(void);
CIMGUI_IMPL_API void cImGui_ImplDX10_InvalidateDeviceObjects(void);
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
CIMGUI_IMPL_API void cImGui_ImplDX10_UpdateTexture(ImTextureData* tex);
// [BETA] Selected render state data shared with callbacks.
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX10_RenderDrawData() call.
// (Please open an issue if you feel you need access to more data)
struct ImGui_ImplDX10_RenderState_t
{
ID3D10Device* Device;
ID3D10SamplerState* SamplerLinear;
ID3D10SamplerState* SamplerNearest;
ID3D10Buffer* VertexConstantBuffer;
};
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
@@ -0,0 +1,418 @@
{
"defines": [],
"enums": [],
"typedefs": [
{
"name": "ImDrawIdx",
"type": {
"declaration": "unsigned short",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_short"
}
},
"comments": {
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
},
"conditionals": [
{
"condition": "ifndef",
"expression": "ImDrawIdx"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h"
}
}
],
"structs": [
{
"name": "ID3D10Device",
"original_fully_qualified_name": "ID3D10Device",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 22
}
},
{
"name": "ID3D10SamplerState",
"original_fully_qualified_name": "ID3D10SamplerState",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 23
}
},
{
"name": "ID3D10Buffer",
"original_fully_qualified_name": "ID3D10Buffer",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 24
}
},
{
"name": "ImDrawData",
"original_fully_qualified_name": "ImDrawData",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 1
}
},
{
"name": "ImGui_ImplDX10_RenderState",
"original_fully_qualified_name": "ImGui_ImplDX10_RenderState",
"kind": "struct",
"by_value": false,
"forward_declaration": false,
"is_anonymous": false,
"fields": [
{
"name": "Device",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D10Device*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D10Device"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 44
}
},
{
"name": "SamplerLinear",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D10SamplerState*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D10SamplerState"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 45
}
},
{
"name": "SamplerNearest",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D10SamplerState*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D10SamplerState"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 46
}
},
{
"name": "VertexConstantBuffer",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D10Buffer*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D10Buffer"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 47
}
}
],
"comments": {
"preceding": [
"// [BETA] Selected render state data shared with callbacks.",
"// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX10_RenderDrawData() call.",
"// (Please open an issue if you feel you need access to more data)"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 42
}
}
],
"functions": [
{
"name": "cImGui_ImplDX10_Init",
"original_fully_qualified_name": "ImGui_ImplDX10_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [
{
"name": "device",
"type": {
"declaration": "ID3D10Device*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D10Device"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 27
}
},
{
"name": "cImGui_ImplDX10_Shutdown",
"original_fully_qualified_name": "ImGui_ImplDX10_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 28
}
},
{
"name": "cImGui_ImplDX10_NewFrame",
"original_fully_qualified_name": "ImGui_ImplDX10_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 29
}
},
{
"name": "cImGui_ImplDX10_RenderDrawData",
"original_fully_qualified_name": "ImGui_ImplDX10_RenderDrawData",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "draw_data",
"type": {
"declaration": "ImDrawData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImDrawData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 30
}
},
{
"name": "cImGui_ImplDX10_CreateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplDX10_CreateDeviceObjects",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Use if you want to reset your rendering device without losing Dear ImGui state."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 33
}
},
{
"name": "cImGui_ImplDX10_InvalidateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplDX10_InvalidateDeviceObjects",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 34
}
},
{
"name": "cImGui_ImplDX10_UpdateTexture",
"original_fully_qualified_name": "ImGui_ImplDX10_UpdateTexture",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "tex",
"type": {
"declaration": "ImTextureData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImTextureData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx10.h",
"line": 37
}
}
]
}
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
+133
View File
@@ -0,0 +1,133 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_dx11.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_dx11.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX11_Init(ID3D11Device* device, ID3D11DeviceContext* device_context)
{
return ::ImGui_ImplDX11_Init(device, device_context);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_Shutdown(void)
{
::ImGui_ImplDX11_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_NewFrame(void)
{
::ImGui_ImplDX11_NewFrame();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_RenderDrawData(cimgui::ImDrawData* draw_data)
{
::ImGui_ImplDX11_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX11_CreateDeviceObjects(void)
{
return ::ImGui_ImplDX11_CreateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_InvalidateDeviceObjects(void)
{
::ImGui_ImplDX11_InvalidateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX11_UpdateTexture(cimgui::ImTextureData* tex)
{
::ImGui_ImplDX11_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
}
#endif // #ifndef IMGUI_DISABLE
+67
View File
@@ -0,0 +1,67 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Renderer Backend for DirectX11
// Auto-generated forward declarations for C header
typedef struct ImGui_ImplDX11_RenderState_t ImGui_ImplDX11_RenderState;
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// This needs to be used along with a Platform Backend (e.g. Win32)
// Implemented features:
// [X] Renderer: User texture binding. Use 'ID3D11ShaderResourceView*' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
// [X] Renderer: Expose selected render state for draw callbacks to use. Access in '(ImGui_ImplXXXX_RenderState*)GetPlatformIO().Renderer_RenderState'.
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include "dcimgui.h"
#ifndef IMGUI_DISABLE
typedef struct ImDrawData_t ImDrawData;
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
CIMGUI_IMPL_API bool cImGui_ImplDX11_Init(ID3D11Device* device, ID3D11DeviceContext* device_context);
CIMGUI_IMPL_API void cImGui_ImplDX11_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplDX11_NewFrame(void);
CIMGUI_IMPL_API void cImGui_ImplDX11_RenderDrawData(ImDrawData* draw_data);
// Use if you want to reset your rendering device without losing Dear ImGui state.
CIMGUI_IMPL_API bool cImGui_ImplDX11_CreateDeviceObjects(void);
CIMGUI_IMPL_API void cImGui_ImplDX11_InvalidateDeviceObjects(void);
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
CIMGUI_IMPL_API void cImGui_ImplDX11_UpdateTexture(ImTextureData* tex);
// [BETA] Selected render state data shared with callbacks.
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX11_RenderDrawData() call.
// (Please open an issue if you feel you need access to more data)
struct ImGui_ImplDX11_RenderState_t
{
ID3D11Device* Device;
ID3D11DeviceContext* DeviceContext;
ID3D11SamplerState* SamplerLinear;
ID3D11SamplerState* SamplerNearest;
ID3D11Buffer* VertexConstantBuffer;
};
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
@@ -0,0 +1,412 @@
{
"defines": [],
"enums": [],
"typedefs": [
{
"name": "ImDrawIdx",
"type": {
"declaration": "unsigned short",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_short"
}
},
"comments": {
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
},
"conditionals": [
{
"condition": "ifndef",
"expression": "ImDrawIdx"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h"
}
}
],
"structs": [
{
"name": "ImDrawData",
"original_fully_qualified_name": "ImDrawData",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 1
}
},
{
"name": "ImGui_ImplDX11_RenderState",
"original_fully_qualified_name": "ImGui_ImplDX11_RenderState",
"kind": "struct",
"by_value": false,
"forward_declaration": false,
"is_anonymous": false,
"fields": [
{
"name": "Device",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D11Device*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D11Device"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 46
}
},
{
"name": "DeviceContext",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D11DeviceContext*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D11DeviceContext"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 47
}
},
{
"name": "SamplerLinear",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D11SamplerState*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D11SamplerState"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 48
}
},
{
"name": "SamplerNearest",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D11SamplerState*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D11SamplerState"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 49
}
},
{
"name": "VertexConstantBuffer",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D11Buffer*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D11Buffer"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 50
}
}
],
"comments": {
"preceding": [
"// [BETA] Selected render state data shared with callbacks.",
"// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX11_RenderDrawData() call.",
"// (Please open an issue if you feel you need access to more data)"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 44
}
}
],
"functions": [
{
"name": "cImGui_ImplDX11_Init",
"original_fully_qualified_name": "ImGui_ImplDX11_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [
{
"name": "device",
"type": {
"declaration": "ID3D11Device*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D11Device"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "device_context",
"type": {
"declaration": "ID3D11DeviceContext*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D11DeviceContext"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 29
}
},
{
"name": "cImGui_ImplDX11_Shutdown",
"original_fully_qualified_name": "ImGui_ImplDX11_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 30
}
},
{
"name": "cImGui_ImplDX11_NewFrame",
"original_fully_qualified_name": "ImGui_ImplDX11_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 31
}
},
{
"name": "cImGui_ImplDX11_RenderDrawData",
"original_fully_qualified_name": "ImGui_ImplDX11_RenderDrawData",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "draw_data",
"type": {
"declaration": "ImDrawData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImDrawData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 32
}
},
{
"name": "cImGui_ImplDX11_CreateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplDX11_CreateDeviceObjects",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Use if you want to reset your rendering device without losing Dear ImGui state."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 35
}
},
{
"name": "cImGui_ImplDX11_InvalidateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplDX11_InvalidateDeviceObjects",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 36
}
},
{
"name": "cImGui_ImplDX11_UpdateTexture",
"original_fully_qualified_name": "ImGui_ImplDX11_UpdateTexture",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "tex",
"type": {
"declaration": "ImTextureData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImTextureData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx11.h",
"line": 39
}
}
]
}
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
+143
View File
@@ -0,0 +1,143 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_dx12.h"
#include <stdio.h>
#include <d3d12.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_dx12.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX12_Init(cimgui::ImGui_ImplDX12_InitInfo* info)
{
return ::ImGui_ImplDX12_Init(reinterpret_cast<::ImGui_ImplDX12_InitInfo*>(info));
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_Shutdown(void)
{
::ImGui_ImplDX12_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_NewFrame(void)
{
::ImGui_ImplDX12_NewFrame();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_RenderDrawData(cimgui::ImDrawData* draw_data, ID3D12GraphicsCommandList* graphics_command_list)
{
::ImGui_ImplDX12_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data), graphics_command_list);
}
#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX12_InitID3D12DevicePtr(ID3D12Device* device, int num_frames_in_flight, DXGI_FORMAT rtv_format, ID3D12DescriptorHeap* srv_descriptor_heap, D3D12_CPU_DESCRIPTOR_HANDLE font_srv_cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE font_srv_gpu_desc_handle)
{
return ::ImGui_ImplDX12_Init(device, num_frames_in_flight, rtv_format, srv_descriptor_heap, font_srv_cpu_desc_handle, font_srv_gpu_desc_handle);
}
#endif // #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX12_CreateDeviceObjects(void)
{
return ::ImGui_ImplDX12_CreateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_InvalidateDeviceObjects(void)
{
::ImGui_ImplDX12_InvalidateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX12_UpdateTexture(cimgui::ImTextureData* tex)
{
::ImGui_ImplDX12_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
}
#endif // #ifndef IMGUI_DISABLE
+106
View File
@@ -0,0 +1,106 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Renderer Backend for DirectX12
// Auto-generated forward declarations for C header
typedef struct ImGui_ImplDX12_InitInfo_t ImGui_ImplDX12_InitInfo;
typedef struct ImGui_ImplDX12_RenderState_t ImGui_ImplDX12_RenderState;
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// This needs to be used along with a Platform Backend (e.g. Win32)
// Implemented features:
// [X] Renderer: User texture binding. Use 'D3D12_GPU_DESCRIPTOR_HANDLE' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
// [X] Renderer: Expose selected render state for draw callbacks to use. Access in '(ImGui_ImplXXXX_RenderState*)GetPlatformIO().Renderer_RenderState'.
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
// The aim of imgui_impl_dx12.h/.cpp is to be usable in your engine without any modification.
// IF YOU FEEL YOU NEED TO MAKE ANY CHANGE TO THIS CODE, please share them and your feedback at https://github.com/ocornut/imgui/
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include "dcimgui.h"
#ifndef IMGUI_DISABLE
#include <dxgiformat.h>
#include <d3d12.h>
// Clang/GCC warnings with -Weverything
#if defined(__clang__)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wold-style-cast" // warning: use of old-style cast
#endif // #if defined(__clang__)
typedef struct ImGui_ImplDX12_InitInfo_ImDrawData_t ImGui_ImplDX12_InitInfo_ImDrawData;
// Initialization data, for ImGui_ImplDX12_Init()
struct ImGui_ImplDX12_InitInfo_t
{
ID3D12Device* Device;
ID3D12CommandQueue* CommandQueue; // Command queue used for queuing texture uploads.
int NumFramesInFlight;
DXGI_FORMAT RTVFormat; // RenderTarget format.
DXGI_FORMAT DSVFormat; // DepthStencilView format.
void* UserData;
// Allocating SRV descriptors for textures is up to the application, so we provide callbacks.
// (current version of the backend will only allocate one descriptor, from 1.92 the backend will need to allocate more)
ID3D12DescriptorHeap* SrvDescriptorHeap;
void (*SrvDescriptorAllocFn)(ImGui_ImplDX12_InitInfo* info, D3D12_CPU_DESCRIPTOR_HANDLE* out_cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE* out_gpu_desc_handle);
void (*SrvDescriptorFreeFn)(ImGui_ImplDX12_InitInfo* info, D3D12_CPU_DESCRIPTOR_HANDLE cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE gpu_desc_handle);
#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
D3D12_CPU_DESCRIPTOR_HANDLE LegacySingleSrvCpuDescriptor; // To facilitate transition from single descriptor to allocator callback, you may use those.
D3D12_GPU_DESCRIPTOR_HANDLE LegacySingleSrvGpuDescriptor;
#endif // #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
};
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
CIMGUI_IMPL_API bool cImGui_ImplDX12_Init(ImGui_ImplDX12_InitInfo* info);
CIMGUI_IMPL_API void cImGui_ImplDX12_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplDX12_NewFrame(void);
CIMGUI_IMPL_API void cImGui_ImplDX12_RenderDrawData(ImDrawData* draw_data, ID3D12GraphicsCommandList* graphics_command_list);
#ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
// Legacy initialization API Obsoleted in 1.91.5
// - font_srv_cpu_desc_handle and font_srv_gpu_desc_handle are handles to a single SRV descriptor to use for the internal font texture, they must be in 'srv_descriptor_heap'
// - When we introduced the ImGui_ImplDX12_InitInfo struct we also added a 'ID3D12CommandQueue* CommandQueue' field.
CIMGUI_IMPL_API bool cImGui_ImplDX12_InitID3D12DevicePtr(ID3D12Device* device, int num_frames_in_flight, DXGI_FORMAT rtv_format, ID3D12DescriptorHeap* srv_descriptor_heap, D3D12_CPU_DESCRIPTOR_HANDLE font_srv_cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE font_srv_gpu_desc_handle);
#endif // #ifndef IMGUI_DISABLE_OBSOLETE_FUNCTIONS
// Use if you want to reset your rendering device without losing Dear ImGui state.
CIMGUI_IMPL_API bool cImGui_ImplDX12_CreateDeviceObjects(void);
CIMGUI_IMPL_API void cImGui_ImplDX12_InvalidateDeviceObjects(void);
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
CIMGUI_IMPL_API void cImGui_ImplDX12_UpdateTexture(ImTextureData* tex);
// [BETA] Selected render state data shared with callbacks.
// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX12_RenderDrawData() call.
// (Please open an issue if you feel you need access to more data)
struct ImGui_ImplDX12_RenderState_t
{
ID3D12Device* Device;
ID3D12GraphicsCommandList* CommandList;
};
#if defined(__clang__)
#pragma clang diagnostic pop
#endif // #if defined(__clang__)
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
@@ -0,0 +1,918 @@
{
"defines": [],
"enums": [],
"typedefs": [
{
"name": "ImDrawIdx",
"type": {
"declaration": "unsigned short",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_short"
}
},
"comments": {
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
},
"conditionals": [
{
"condition": "ifndef",
"expression": "ImDrawIdx"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h"
}
}
],
"structs": [
{
"name": "ImGui_ImplDX12_InitInfo_ImDrawData",
"original_fully_qualified_name": "ImGui_ImplDX12_InitInfo_ImDrawData",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 1
}
},
{
"name": "ImGui_ImplDX12_InitInfo",
"original_fully_qualified_name": "ImGui_ImplDX12_InitInfo",
"kind": "struct",
"by_value": false,
"forward_declaration": false,
"is_anonymous": false,
"fields": [
{
"name": "Device",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D12Device*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D12Device"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 37
}
},
{
"name": "CommandQueue",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D12CommandQueue*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D12CommandQueue"
}
}
},
"comments": {
"attached": "// Command queue used for queuing texture uploads."
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 38
}
},
{
"name": "NumFramesInFlight",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 39
}
},
{
"name": "RTVFormat",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "DXGI_FORMAT",
"description": {
"kind": "User",
"name": "DXGI_FORMAT"
}
},
"comments": {
"attached": "// RenderTarget format."
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 40
}
},
{
"name": "DSVFormat",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "DXGI_FORMAT",
"description": {
"kind": "User",
"name": "DXGI_FORMAT"
}
},
"comments": {
"attached": "// DepthStencilView format."
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 41
}
},
{
"name": "UserData",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "void*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "Builtin",
"builtin_type": "void"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 42
}
},
{
"name": "SrvDescriptorHeap",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D12DescriptorHeap*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D12DescriptorHeap"
}
}
},
"comments": {
"preceding": [
"// Allocating SRV descriptors for textures is up to the application, so we provide callbacks.",
"// (current version of the backend will only allocate one descriptor, from 1.92 the backend will need to allocate more)"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 46
}
},
{
"name": "SrvDescriptorAllocFn",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "void (*SrvDescriptorAllocFn)(ImGui_ImplDX12_InitInfo* info, D3D12_CPU_DESCRIPTOR_HANDLE* out_cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE* out_gpu_desc_handle)",
"type_details": {
"flavour": "function_pointer",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "info",
"type": {
"declaration": "ImGui_ImplDX12_InitInfo*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImGui_ImplDX12_InitInfo"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "out_cpu_desc_handle",
"type": {
"declaration": "D3D12_CPU_DESCRIPTOR_HANDLE*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "out_gpu_desc_handle",
"type": {
"declaration": "D3D12_GPU_DESCRIPTOR_HANDLE*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
]
},
"description": {
"kind": "Type",
"name": "SrvDescriptorAllocFn",
"inner_type": {
"kind": "Pointer",
"inner_type": {
"kind": "Function",
"return_type": {
"kind": "Builtin",
"builtin_type": "void"
},
"parameters": [
{
"kind": "Type",
"name": "info",
"inner_type": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImGui_ImplDX12_InitInfo"
}
}
},
{
"kind": "Type",
"name": "out_cpu_desc_handle",
"inner_type": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
}
}
},
{
"kind": "Type",
"name": "out_gpu_desc_handle",
"inner_type": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
}
}
}
]
}
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h"
}
},
{
"name": "SrvDescriptorFreeFn",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "void (*SrvDescriptorFreeFn)(ImGui_ImplDX12_InitInfo* info, D3D12_CPU_DESCRIPTOR_HANDLE cpu_desc_handle, D3D12_GPU_DESCRIPTOR_HANDLE gpu_desc_handle)",
"type_details": {
"flavour": "function_pointer",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "info",
"type": {
"declaration": "ImGui_ImplDX12_InitInfo*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImGui_ImplDX12_InitInfo"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "cpu_desc_handle",
"type": {
"declaration": "D3D12_CPU_DESCRIPTOR_HANDLE",
"description": {
"kind": "User",
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "gpu_desc_handle",
"type": {
"declaration": "D3D12_GPU_DESCRIPTOR_HANDLE",
"description": {
"kind": "User",
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
]
},
"description": {
"kind": "Type",
"name": "SrvDescriptorFreeFn",
"inner_type": {
"kind": "Pointer",
"inner_type": {
"kind": "Function",
"return_type": {
"kind": "Builtin",
"builtin_type": "void"
},
"parameters": [
{
"kind": "Type",
"name": "info",
"inner_type": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImGui_ImplDX12_InitInfo"
}
}
},
{
"kind": "Type",
"name": "cpu_desc_handle",
"inner_type": {
"kind": "User",
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
}
},
{
"kind": "Type",
"name": "gpu_desc_handle",
"inner_type": {
"kind": "User",
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
}
}
]
}
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h"
}
},
{
"name": "LegacySingleSrvCpuDescriptor",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "D3D12_CPU_DESCRIPTOR_HANDLE",
"description": {
"kind": "User",
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
}
},
"comments": {
"attached": "// To facilitate transition from single descriptor to allocator callback, you may use those."
},
"conditionals": [
{
"condition": "ifndef",
"expression": "IMGUI_DISABLE_OBSOLETE_FUNCTIONS"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 50
}
},
{
"name": "LegacySingleSrvGpuDescriptor",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "D3D12_GPU_DESCRIPTOR_HANDLE",
"description": {
"kind": "User",
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
}
},
"conditionals": [
{
"condition": "ifndef",
"expression": "IMGUI_DISABLE_OBSOLETE_FUNCTIONS"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 51
}
}
],
"comments": {
"preceding": [
"// Initialization data, for ImGui_ImplDX12_Init()"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 35
}
},
{
"name": "ImGui_ImplDX12_RenderState",
"original_fully_qualified_name": "ImGui_ImplDX12_RenderState",
"kind": "struct",
"by_value": false,
"forward_declaration": false,
"is_anonymous": false,
"fields": [
{
"name": "Device",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D12Device*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D12Device"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 82
}
},
{
"name": "CommandList",
"is_array": false,
"is_anonymous": false,
"type": {
"declaration": "ID3D12GraphicsCommandList*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D12GraphicsCommandList"
}
}
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 83
}
}
],
"comments": {
"preceding": [
"// [BETA] Selected render state data shared with callbacks.",
"// This is temporarily stored in GetPlatformIO().Renderer_RenderState during the ImGui_ImplDX12_RenderDrawData() call.",
"// (Please open an issue if you feel you need access to more data)"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 80
}
}
],
"functions": [
{
"name": "cImGui_ImplDX12_Init",
"original_fully_qualified_name": "ImGui_ImplDX12_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [
{
"name": "info",
"type": {
"declaration": "ImGui_ImplDX12_InitInfo*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImGui_ImplDX12_InitInfo"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 58
}
},
{
"name": "cImGui_ImplDX12_Shutdown",
"original_fully_qualified_name": "ImGui_ImplDX12_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 59
}
},
{
"name": "cImGui_ImplDX12_NewFrame",
"original_fully_qualified_name": "ImGui_ImplDX12_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 60
}
},
{
"name": "cImGui_ImplDX12_RenderDrawData",
"original_fully_qualified_name": "ImGui_ImplDX12_RenderDrawData",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "draw_data",
"type": {
"declaration": "ImDrawData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImDrawData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "graphics_command_list",
"type": {
"declaration": "ID3D12GraphicsCommandList*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D12GraphicsCommandList"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 61
}
},
{
"name": "cImGui_ImplDX12_InitID3D12DevicePtr",
"original_fully_qualified_name": "ImGui_ImplDX12_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [
{
"name": "device",
"type": {
"declaration": "ID3D12Device*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D12Device"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "num_frames_in_flight",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "rtv_format",
"type": {
"declaration": "DXGI_FORMAT",
"description": {
"kind": "User",
"name": "DXGI_FORMAT"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "srv_descriptor_heap",
"type": {
"declaration": "ID3D12DescriptorHeap*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ID3D12DescriptorHeap"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "font_srv_cpu_desc_handle",
"type": {
"declaration": "D3D12_CPU_DESCRIPTOR_HANDLE",
"description": {
"kind": "User",
"name": "D3D12_CPU_DESCRIPTOR_HANDLE"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "font_srv_gpu_desc_handle",
"type": {
"declaration": "D3D12_GPU_DESCRIPTOR_HANDLE",
"description": {
"kind": "User",
"name": "D3D12_GPU_DESCRIPTOR_HANDLE"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Legacy initialization API Obsoleted in 1.91.5",
"// - font_srv_cpu_desc_handle and font_srv_gpu_desc_handle are handles to a single SRV descriptor to use for the internal font texture, they must be in 'srv_descriptor_heap'",
"// - When we introduced the ImGui_ImplDX12_InitInfo struct we also added a 'ID3D12CommandQueue* CommandQueue' field."
]
},
"conditionals": [
{
"condition": "ifndef",
"expression": "IMGUI_DISABLE_OBSOLETE_FUNCTIONS"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 67
}
},
{
"name": "cImGui_ImplDX12_CreateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplDX12_CreateDeviceObjects",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Use if you want to reset your rendering device without losing Dear ImGui state."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 71
}
},
{
"name": "cImGui_ImplDX12_InvalidateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplDX12_InvalidateDeviceObjects",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 72
}
},
{
"name": "cImGui_ImplDX12_UpdateTexture",
"original_fully_qualified_name": "ImGui_ImplDX12_UpdateTexture",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "tex",
"type": {
"declaration": "ImTextureData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImTextureData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx12.h",
"line": 75
}
}
]
}
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
+133
View File
@@ -0,0 +1,133 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_dx9.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_dx9.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX9_Init(cimgui::IDirect3DDevice9* device)
{
return ::ImGui_ImplDX9_Init(reinterpret_cast<::IDirect3DDevice9*>(device));
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_Shutdown(void)
{
::ImGui_ImplDX9_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_NewFrame(void)
{
::ImGui_ImplDX9_NewFrame();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_RenderDrawData(cimgui::ImDrawData* draw_data)
{
::ImGui_ImplDX9_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplDX9_CreateDeviceObjects(void)
{
return ::ImGui_ImplDX9_CreateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_InvalidateDeviceObjects(void)
{
::ImGui_ImplDX9_InvalidateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplDX9_UpdateTexture(cimgui::ImTextureData* tex)
{
::ImGui_ImplDX9_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
}
#endif // #ifndef IMGUI_DISABLE
+55
View File
@@ -0,0 +1,55 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Renderer Backend for DirectX9
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// This needs to be used along with a Platform Backend (e.g. Win32)
// Implemented features:
// [X] Renderer: User texture binding. Use 'LPDIRECT3DTEXTURE9' as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
// [X] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
// [X] Renderer: IMGUI_USE_BGRA_PACKED_COLOR support, as this is the optimal color encoding for DirectX9.
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include "dcimgui.h"
#ifndef IMGUI_DISABLE
typedef struct IDirect3DDevice9 IDirect3DDevice9;
typedef struct ImDrawData_t ImDrawData;
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
CIMGUI_IMPL_API bool cImGui_ImplDX9_Init(IDirect3DDevice9* device);
CIMGUI_IMPL_API void cImGui_ImplDX9_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplDX9_NewFrame(void);
CIMGUI_IMPL_API void cImGui_ImplDX9_RenderDrawData(ImDrawData* draw_data);
// Use if you want to reset your rendering device without losing Dear ImGui state.
CIMGUI_IMPL_API bool cImGui_ImplDX9_CreateDeviceObjects(void);
CIMGUI_IMPL_API void cImGui_ImplDX9_InvalidateDeviceObjects(void);
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
CIMGUI_IMPL_API void cImGui_ImplDX9_UpdateTexture(ImTextureData* tex);
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
+288
View File
@@ -0,0 +1,288 @@
{
"defines": [],
"enums": [],
"typedefs": [
{
"name": "ImDrawIdx",
"type": {
"declaration": "unsigned short",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_short"
}
},
"comments": {
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
},
"conditionals": [
{
"condition": "ifndef",
"expression": "ImDrawIdx"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h"
}
}
],
"structs": [
{
"name": "IDirect3DDevice9",
"original_fully_qualified_name": "IDirect3DDevice9",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h",
"line": 23
}
},
{
"name": "ImDrawData",
"original_fully_qualified_name": "ImDrawData",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h",
"line": 1
}
}
],
"functions": [
{
"name": "cImGui_ImplDX9_Init",
"original_fully_qualified_name": "ImGui_ImplDX9_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [
{
"name": "device",
"type": {
"declaration": "IDirect3DDevice9*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "IDirect3DDevice9"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h",
"line": 26
}
},
{
"name": "cImGui_ImplDX9_Shutdown",
"original_fully_qualified_name": "ImGui_ImplDX9_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h",
"line": 27
}
},
{
"name": "cImGui_ImplDX9_NewFrame",
"original_fully_qualified_name": "ImGui_ImplDX9_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h",
"line": 28
}
},
{
"name": "cImGui_ImplDX9_RenderDrawData",
"original_fully_qualified_name": "ImGui_ImplDX9_RenderDrawData",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "draw_data",
"type": {
"declaration": "ImDrawData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImDrawData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h",
"line": 29
}
},
{
"name": "cImGui_ImplDX9_CreateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplDX9_CreateDeviceObjects",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Use if you want to reset your rendering device without losing Dear ImGui state."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h",
"line": 32
}
},
{
"name": "cImGui_ImplDX9_InvalidateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplDX9_InvalidateDeviceObjects",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h",
"line": 33
}
},
{
"name": "cImGui_ImplDX9_UpdateTexture",
"original_fully_qualified_name": "ImGui_ImplDX9_UpdateTexture",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "tex",
"type": {
"declaration": "ImTextureData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImTextureData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_dx9.h",
"line": 36
}
}
]
}
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
+202
View File
@@ -0,0 +1,202 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_glfw.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_glfw.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplGlfw_InitForOpenGL(cimgui::GLFWwindow* window, bool install_callbacks)
{
return ::ImGui_ImplGlfw_InitForOpenGL(reinterpret_cast<::GLFWwindow*>(window), install_callbacks);
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplGlfw_InitForVulkan(cimgui::GLFWwindow* window, bool install_callbacks)
{
return ::ImGui_ImplGlfw_InitForVulkan(reinterpret_cast<::GLFWwindow*>(window), install_callbacks);
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplGlfw_InitForOther(cimgui::GLFWwindow* window, bool install_callbacks)
{
return ::ImGui_ImplGlfw_InitForOther(reinterpret_cast<::GLFWwindow*>(window), install_callbacks);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_Shutdown(void)
{
::ImGui_ImplGlfw_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_NewFrame(void)
{
::ImGui_ImplGlfw_NewFrame();
}
#ifdef __EMSCRIPTEN__
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_InstallEmscriptenCallbacks(cimgui::GLFWwindow* window, const char* canvas_selector)
{
::ImGui_ImplGlfw_InstallEmscriptenCallbacks(reinterpret_cast<::GLFWwindow*>(window), canvas_selector);
}
#endif // #ifdef __EMSCRIPTEN__
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_InstallCallbacks(cimgui::GLFWwindow* window)
{
::ImGui_ImplGlfw_InstallCallbacks(reinterpret_cast<::GLFWwindow*>(window));
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_RestoreCallbacks(cimgui::GLFWwindow* window)
{
::ImGui_ImplGlfw_RestoreCallbacks(reinterpret_cast<::GLFWwindow*>(window));
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_SetCallbacksChainForAllWindows(bool chain_for_all_windows)
{
::ImGui_ImplGlfw_SetCallbacksChainForAllWindows(chain_for_all_windows);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_WindowFocusCallback(cimgui::GLFWwindow* window, int focused)
{
::ImGui_ImplGlfw_WindowFocusCallback(reinterpret_cast<::GLFWwindow*>(window), focused);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_CursorEnterCallback(cimgui::GLFWwindow* window, int entered)
{
::ImGui_ImplGlfw_CursorEnterCallback(reinterpret_cast<::GLFWwindow*>(window), entered);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_CursorPosCallback(cimgui::GLFWwindow* window, double x, double y)
{
::ImGui_ImplGlfw_CursorPosCallback(reinterpret_cast<::GLFWwindow*>(window), x, y);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_MouseButtonCallback(cimgui::GLFWwindow* window, int button, int action, int mods)
{
::ImGui_ImplGlfw_MouseButtonCallback(reinterpret_cast<::GLFWwindow*>(window), button, action, mods);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_ScrollCallback(cimgui::GLFWwindow* window, double xoffset, double yoffset)
{
::ImGui_ImplGlfw_ScrollCallback(reinterpret_cast<::GLFWwindow*>(window), xoffset, yoffset);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_KeyCallback(cimgui::GLFWwindow* window, int key, int scancode, int action, int mods)
{
::ImGui_ImplGlfw_KeyCallback(reinterpret_cast<::GLFWwindow*>(window), key, scancode, action, mods);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_CharCallback(cimgui::GLFWwindow* window, unsigned int c)
{
::ImGui_ImplGlfw_CharCallback(reinterpret_cast<::GLFWwindow*>(window), c);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_MonitorCallback(cimgui::GLFWmonitor* monitor, int event)
{
::ImGui_ImplGlfw_MonitorCallback(reinterpret_cast<::GLFWmonitor*>(monitor), event);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGlfw_Sleep(int milliseconds)
{
::ImGui_ImplGlfw_Sleep(milliseconds);
}
CIMGUI_IMPL_API float cimgui::cImGui_ImplGlfw_GetContentScaleForWindow(cimgui::GLFWwindow* window)
{
return ::ImGui_ImplGlfw_GetContentScaleForWindow(reinterpret_cast<::GLFWwindow*>(window));
}
CIMGUI_IMPL_API float cimgui::cImGui_ImplGlfw_GetContentScaleForMonitor(cimgui::GLFWmonitor* monitor)
{
return ::ImGui_ImplGlfw_GetContentScaleForMonitor(reinterpret_cast<::GLFWmonitor*>(monitor));
}
#endif // #ifndef IMGUI_DISABLE
+88
View File
@@ -0,0 +1,88 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Platform Backend for GLFW
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// This needs to be used along with a Renderer (e.g. OpenGL3, Vulkan, WebGPU..)
// (Info: GLFW is a cross-platform general purpose library for handling windows, inputs, OpenGL/Vulkan graphics context creation, etc.)
// (Requires: GLFW 3.0+. Prefer GLFW 3.3+/3.4+ for full feature support.)
// Implemented features:
// [X] Platform: Clipboard support.
// [X] Platform: Mouse support. Can discriminate Mouse/TouchScreen/Pen (Windows only).
// [X] Platform: Keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy GLFW_KEY_* values are obsolete since 1.87 and not supported since 1.91.5]
// [X] Platform: Gamepad support. Enable with 'io.ConfigFlags |= ImGuiConfigFlags_NavEnableGamepad'.
// [X] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors) with GLFW 3.1+. Resizing cursors requires GLFW 3.4+! Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'.
// [X] Platform: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
// [X] Multiple Dear ImGui contexts support.
// Missing features or Issues:
// [ ] Platform: Touch events are only correctly identified as Touch on Windows. This create issues with some interactions. GLFW doesn't provide a way to identify touch inputs from mouse inputs, we cannot call io.AddMouseSourceEvent() to identify the source. We provide a Windows-specific workaround.
// [ ] Platform: Missing ImGuiMouseCursor_Wait and ImGuiMouseCursor_Progress cursors.
// [ ] Platform: Multi-viewport: Missing ImGuiBackendFlags_HasParentViewport support. The viewport->ParentViewportID field is ignored, and therefore io.ConfigViewportsNoDefaultParent has no effect either.
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include "dcimgui.h"
#ifndef IMGUI_DISABLE
typedef struct GLFWwindow GLFWwindow;
typedef struct GLFWmonitor GLFWmonitor;
typedef struct ImDrawData_t ImDrawData;
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
CIMGUI_IMPL_API bool cImGui_ImplGlfw_InitForOpenGL(GLFWwindow* window, bool install_callbacks);
CIMGUI_IMPL_API bool cImGui_ImplGlfw_InitForVulkan(GLFWwindow* window, bool install_callbacks);
CIMGUI_IMPL_API bool cImGui_ImplGlfw_InitForOther(GLFWwindow* window, bool install_callbacks);
CIMGUI_IMPL_API void cImGui_ImplGlfw_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplGlfw_NewFrame(void);
// Emscripten related initialization phase methods (call after ImGui_ImplGlfw_InitForOpenGL)
#ifdef __EMSCRIPTEN__
CIMGUI_IMPL_API void cImGui_ImplGlfw_InstallEmscriptenCallbacks(GLFWwindow* window, const char* canvas_selector);
//static inline void ImGui_ImplGlfw_InstallEmscriptenCanvasResizeCallback(const char* canvas_selector) { ImGui_ImplGlfw_InstallEmscriptenCallbacks(nullptr, canvas_selector); } } // Renamed in 1.91.0
#endif // #ifdef __EMSCRIPTEN__
// GLFW callbacks install
// - When calling Init with 'install_callbacks=true': ImGui_ImplGlfw_InstallCallbacks() is called. GLFW callbacks will be installed for you. They will chain-call user's previously installed callbacks, if any.
// - When calling Init with 'install_callbacks=false': GLFW callbacks won't be installed. You will need to call individual function yourself from your own GLFW callbacks.
CIMGUI_IMPL_API void cImGui_ImplGlfw_InstallCallbacks(GLFWwindow* window);
CIMGUI_IMPL_API void cImGui_ImplGlfw_RestoreCallbacks(GLFWwindow* window);
// GLFW callbacks options:
// - Set 'chain_for_all_windows=true' to enable chaining callbacks for all windows (including secondary viewports created by backends or by user)
CIMGUI_IMPL_API void cImGui_ImplGlfw_SetCallbacksChainForAllWindows(bool chain_for_all_windows);
// GLFW callbacks (individual callbacks to call yourself if you didn't install callbacks)
CIMGUI_IMPL_API void cImGui_ImplGlfw_WindowFocusCallback(GLFWwindow* window, int focused); // Since 1.84
CIMGUI_IMPL_API void cImGui_ImplGlfw_CursorEnterCallback(GLFWwindow* window, int entered); // Since 1.84
CIMGUI_IMPL_API void cImGui_ImplGlfw_CursorPosCallback(GLFWwindow* window, double x, double y); // Since 1.87
CIMGUI_IMPL_API void cImGui_ImplGlfw_MouseButtonCallback(GLFWwindow* window, int button, int action, int mods);
CIMGUI_IMPL_API void cImGui_ImplGlfw_ScrollCallback(GLFWwindow* window, double xoffset, double yoffset);
CIMGUI_IMPL_API void cImGui_ImplGlfw_KeyCallback(GLFWwindow* window, int key, int scancode, int action, int mods);
CIMGUI_IMPL_API void cImGui_ImplGlfw_CharCallback(GLFWwindow* window, unsigned int c);
CIMGUI_IMPL_API void cImGui_ImplGlfw_MonitorCallback(GLFWmonitor* monitor, int event);
// GLFW helpers
CIMGUI_IMPL_API void cImGui_ImplGlfw_Sleep(int milliseconds);
CIMGUI_IMPL_API float cImGui_ImplGlfw_GetContentScaleForWindow(GLFWwindow* window);
CIMGUI_IMPL_API float cImGui_ImplGlfw_GetContentScaleForMonitor(GLFWmonitor* monitor);
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
+158
View File
@@ -0,0 +1,158 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_glut.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_glut.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplGLUT_Init(void)
{
return ::ImGui_ImplGLUT_Init();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_InstallFuncs(void)
{
::ImGui_ImplGLUT_InstallFuncs();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_Shutdown(void)
{
::ImGui_ImplGLUT_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_NewFrame(void)
{
::ImGui_ImplGLUT_NewFrame();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_ReshapeFunc(int w, int h)
{
::ImGui_ImplGLUT_ReshapeFunc(w, h);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_MotionFunc(int x, int y)
{
::ImGui_ImplGLUT_MotionFunc(x, y);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_MouseFunc(int button, int state, int x, int y)
{
::ImGui_ImplGLUT_MouseFunc(button, state, x, y);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_MouseWheelFunc(int button, int dir, int x, int y)
{
::ImGui_ImplGLUT_MouseWheelFunc(button, dir, x, y);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_KeyboardFunc(unsigned char c, int x, int y)
{
::ImGui_ImplGLUT_KeyboardFunc(c, x, y);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_KeyboardUpFunc(unsigned char c, int x, int y)
{
::ImGui_ImplGLUT_KeyboardUpFunc(c, x, y);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_SpecialFunc(int key, int x, int y)
{
::ImGui_ImplGLUT_SpecialFunc(key, x, y);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplGLUT_SpecialUpFunc(int key, int x, int y)
{
::ImGui_ImplGLUT_SpecialUpFunc(key, x, y);
}
#endif // #ifndef IMGUI_DISABLE
+65
View File
@@ -0,0 +1,65 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Platform Backend for GLUT/FreeGLUT
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// This needs to be used along with a Renderer (e.g. OpenGL2)
// !!! GLUT/FreeGLUT IS OBSOLETE PREHISTORIC SOFTWARE. Using GLUT is not recommended unless you really miss the 90's. !!!
// !!! If someone or something is teaching you GLUT today, you are being abused. Please show some resistance. !!!
// !!! Nowadays, prefer using GLFW or SDL instead!
// Implemented features:
// [X] Platform: Partial keyboard support. Since 1.87 we are using the io.AddKeyEvent() function. Pass ImGuiKey values to all key functions e.g. ImGui::IsKeyPressed(ImGuiKey_Space). [Legacy GLUT values are obsolete since 1.87 and not supported since 1.91.5]
// Missing features or Issues:
// [ ] Platform: GLUT is unable to distinguish e.g. Backspace from CTRL+H or TAB from CTRL+I
// [ ] Platform: Missing horizontal mouse wheel support.
// [ ] Platform: Missing mouse cursor shape/visibility support.
// [ ] Platform: Missing clipboard support (not supported by Glut).
// [ ] Platform: Missing gamepad support.
// [ ] Platform: Missing multi-viewport support (multiple windows).
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#ifndef IMGUI_DISABLE
#include "dcimgui.h"
typedef struct ImDrawData_t ImDrawData;
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
CIMGUI_IMPL_API bool cImGui_ImplGLUT_Init(void);
CIMGUI_IMPL_API void cImGui_ImplGLUT_InstallFuncs(void);
CIMGUI_IMPL_API void cImGui_ImplGLUT_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplGLUT_NewFrame(void);
// You can call ImGui_ImplGLUT_InstallFuncs() to get all those functions installed automatically,
// or call them yourself from your own GLUT handlers. We are using the same weird names as GLUT for consistency..
//------------------------------------ GLUT name ---------------------------------------------- Decent Name ---------
CIMGUI_IMPL_API void cImGui_ImplGLUT_ReshapeFunc(int w, int h); // ~ ResizeFunc
CIMGUI_IMPL_API void cImGui_ImplGLUT_MotionFunc(int x, int y); // ~ MouseMoveFunc
CIMGUI_IMPL_API void cImGui_ImplGLUT_MouseFunc(int button, int state, int x, int y); // ~ MouseButtonFunc
CIMGUI_IMPL_API void cImGui_ImplGLUT_MouseWheelFunc(int button, int dir, int x, int y); // ~ MouseWheelFunc
CIMGUI_IMPL_API void cImGui_ImplGLUT_KeyboardFunc(unsigned char c, int x, int y); // ~ CharPressedFunc
CIMGUI_IMPL_API void cImGui_ImplGLUT_KeyboardUpFunc(unsigned char c, int x, int y); // ~ CharReleasedFunc
CIMGUI_IMPL_API void cImGui_ImplGLUT_SpecialFunc(int key, int x, int y); // ~ KeyPressedFunc
CIMGUI_IMPL_API void cImGui_ImplGLUT_SpecialUpFunc(int key, int x, int y); // ~ KeyReleasedFunc
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
@@ -0,0 +1,677 @@
{
"defines": [],
"enums": [],
"typedefs": [
{
"name": "ImDrawIdx",
"type": {
"declaration": "unsigned short",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_short"
}
},
"comments": {
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
},
"conditionals": [
{
"condition": "ifndef",
"expression": "ImDrawIdx"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h"
}
}
],
"structs": [
{
"name": "ImDrawData",
"original_fully_qualified_name": "ImDrawData",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 1
}
}
],
"functions": [
{
"name": "cImGui_ImplGLUT_Init",
"original_fully_qualified_name": "ImGui_ImplGLUT_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 31
}
},
{
"name": "cImGui_ImplGLUT_InstallFuncs",
"original_fully_qualified_name": "ImGui_ImplGLUT_InstallFuncs",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 32
}
},
{
"name": "cImGui_ImplGLUT_Shutdown",
"original_fully_qualified_name": "ImGui_ImplGLUT_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 33
}
},
{
"name": "cImGui_ImplGLUT_NewFrame",
"original_fully_qualified_name": "ImGui_ImplGLUT_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 34
}
},
{
"name": "cImGui_ImplGLUT_ReshapeFunc",
"original_fully_qualified_name": "ImGui_ImplGLUT_ReshapeFunc",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "w",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "h",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// You can call ImGui_ImplGLUT_InstallFuncs() to get all those functions installed automatically,",
"// or call them yourself from your own GLUT handlers. We are using the same weird names as GLUT for consistency..",
"//------------------------------------ GLUT name ---------------------------------------------- Decent Name ---------"
],
"attached": "// ~ ResizeFunc"
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 39
}
},
{
"name": "cImGui_ImplGLUT_MotionFunc",
"original_fully_qualified_name": "ImGui_ImplGLUT_MotionFunc",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "x",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "y",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"attached": "// ~ MouseMoveFunc"
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 40
}
},
{
"name": "cImGui_ImplGLUT_MouseFunc",
"original_fully_qualified_name": "ImGui_ImplGLUT_MouseFunc",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "button",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "state",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "x",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "y",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"attached": "// ~ MouseButtonFunc"
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 41
}
},
{
"name": "cImGui_ImplGLUT_MouseWheelFunc",
"original_fully_qualified_name": "ImGui_ImplGLUT_MouseWheelFunc",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "button",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "dir",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "x",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "y",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"attached": "// ~ MouseWheelFunc"
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 42
}
},
{
"name": "cImGui_ImplGLUT_KeyboardFunc",
"original_fully_qualified_name": "ImGui_ImplGLUT_KeyboardFunc",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "c",
"type": {
"declaration": "unsigned char",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_char"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "x",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "y",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"attached": "// ~ CharPressedFunc"
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 43
}
},
{
"name": "cImGui_ImplGLUT_KeyboardUpFunc",
"original_fully_qualified_name": "ImGui_ImplGLUT_KeyboardUpFunc",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "c",
"type": {
"declaration": "unsigned char",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_char"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "x",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "y",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"attached": "// ~ CharReleasedFunc"
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 44
}
},
{
"name": "cImGui_ImplGLUT_SpecialFunc",
"original_fully_qualified_name": "ImGui_ImplGLUT_SpecialFunc",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "key",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "x",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "y",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"attached": "// ~ KeyPressedFunc"
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 45
}
},
{
"name": "cImGui_ImplGLUT_SpecialUpFunc",
"original_fully_qualified_name": "ImGui_ImplGLUT_SpecialUpFunc",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "key",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "x",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
},
{
"name": "y",
"type": {
"declaration": "int",
"description": {
"kind": "Builtin",
"builtin_type": "int"
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"attached": "// ~ KeyReleasedFunc"
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_glut.h",
"line": 46
}
}
]
}
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
+148
View File
@@ -0,0 +1,148 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_null.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_null.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplNull_Init(void)
{
return ::ImGui_ImplNull_Init();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplNull_Shutdown(void)
{
::ImGui_ImplNull_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplNull_NewFrame(void)
{
::ImGui_ImplNull_NewFrame();
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplNullPlatform_Init(void)
{
return ::ImGui_ImplNullPlatform_Init();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullPlatform_Shutdown(void)
{
::ImGui_ImplNullPlatform_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullPlatform_NewFrame(void)
{
::ImGui_ImplNullPlatform_NewFrame();
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplNullRender_Init(void)
{
return ::ImGui_ImplNullRender_Init();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullRender_Shutdown(void)
{
::ImGui_ImplNullRender_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullRender_NewFrame(void)
{
::ImGui_ImplNullRender_NewFrame();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplNullRender_RenderDrawData(cimgui::ImDrawData* draw_data)
{
::ImGui_ImplNullRender_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
}
#endif // #ifndef IMGUI_DISABLE
+51
View File
@@ -0,0 +1,51 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Null Platform+Renderer Backends
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// This is designed if you need to use a blind Dear Imgui context with no input and no output.
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include "dcimgui.h"
#ifndef IMGUI_DISABLE
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
typedef struct ImDrawData_t ImDrawData;
// Null = NullPlatform + NullRender
CIMGUI_IMPL_API bool cImGui_ImplNull_Init(void);
CIMGUI_IMPL_API void cImGui_ImplNull_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplNull_NewFrame(void);
// Null platform only (single screen, fixed timestep, no inputs)
CIMGUI_IMPL_API bool cImGui_ImplNullPlatform_Init(void);
CIMGUI_IMPL_API void cImGui_ImplNullPlatform_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplNullPlatform_NewFrame(void);
// Null renderer only (no output)
CIMGUI_IMPL_API bool cImGui_ImplNullRender_Init(void);
CIMGUI_IMPL_API void cImGui_ImplNullRender_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplNullRender_NewFrame(void);
CIMGUI_IMPL_API void cImGui_ImplNullRender_RenderDrawData(ImDrawData* draw_data);
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
@@ -0,0 +1,309 @@
{
"defines": [],
"enums": [],
"typedefs": [
{
"name": "ImDrawIdx",
"type": {
"declaration": "unsigned short",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_short"
}
},
"comments": {
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
},
"conditionals": [
{
"condition": "ifndef",
"expression": "ImDrawIdx"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h"
}
}
],
"structs": [
{
"name": "ImDrawData",
"original_fully_qualified_name": "ImDrawData",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 1
}
}
],
"functions": [
{
"name": "cImGui_ImplNull_Init",
"original_fully_qualified_name": "ImGui_ImplNull_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Null = NullPlatform + NullRender"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 19
}
},
{
"name": "cImGui_ImplNull_Shutdown",
"original_fully_qualified_name": "ImGui_ImplNull_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 20
}
},
{
"name": "cImGui_ImplNull_NewFrame",
"original_fully_qualified_name": "ImGui_ImplNull_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 21
}
},
{
"name": "cImGui_ImplNullPlatform_Init",
"original_fully_qualified_name": "ImGui_ImplNullPlatform_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Null platform only (single screen, fixed timestep, no inputs)"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 24
}
},
{
"name": "cImGui_ImplNullPlatform_Shutdown",
"original_fully_qualified_name": "ImGui_ImplNullPlatform_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 25
}
},
{
"name": "cImGui_ImplNullPlatform_NewFrame",
"original_fully_qualified_name": "ImGui_ImplNullPlatform_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 26
}
},
{
"name": "cImGui_ImplNullRender_Init",
"original_fully_qualified_name": "ImGui_ImplNullRender_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Null renderer only (no output)"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 29
}
},
{
"name": "cImGui_ImplNullRender_Shutdown",
"original_fully_qualified_name": "ImGui_ImplNullRender_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 30
}
},
{
"name": "cImGui_ImplNullRender_NewFrame",
"original_fully_qualified_name": "ImGui_ImplNullRender_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 31
}
},
{
"name": "cImGui_ImplNullRender_RenderDrawData",
"original_fully_qualified_name": "ImGui_ImplNullRender_RenderDrawData",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "draw_data",
"type": {
"declaration": "ImDrawData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImDrawData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_null.h",
"line": 32
}
}
]
}
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,133 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_opengl2.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_opengl2.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL2_Init(void)
{
return ::ImGui_ImplOpenGL2_Init();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_Shutdown(void)
{
::ImGui_ImplOpenGL2_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_NewFrame(void)
{
::ImGui_ImplOpenGL2_NewFrame();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_RenderDrawData(cimgui::ImDrawData* draw_data)
{
::ImGui_ImplOpenGL2_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL2_CreateDeviceObjects(void)
{
return ::ImGui_ImplOpenGL2_CreateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_DestroyDeviceObjects(void)
{
::ImGui_ImplOpenGL2_DestroyDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL2_UpdateTexture(cimgui::ImTextureData* tex)
{
::ImGui_ImplOpenGL2_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
}
#endif // #ifndef IMGUI_DISABLE
@@ -0,0 +1,61 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
// dear imgui: Renderer Backend for OpenGL2 (legacy OpenGL, fixed pipeline)
// ImDrawIdx: vertex index. [Compile-time configurable type]
// - To use 16-bit indices + allow large meshes: backend need to set 'io.BackendFlags |= ImGuiBackendFlags_RendererHasVtxOffset' and handle ImDrawCmd::VtxOffset (recommended).
// - To use 32-bit indices: override with '#define ImDrawIdx unsigned int' in your imconfig.h file.
#ifndef ImDrawIdx
typedef unsigned short ImDrawIdx; // Default: 16-bit (for maximum compatibility with renderer backends)
#endif // #ifndef ImDrawIdx
// This needs to be used along with a Platform Backend (e.g. GLFW, SDL, Win32, custom..)
// Implemented features:
// [X] Renderer: User texture binding. Use 'GLuint' OpenGL texture as texture identifier. Read the FAQ about ImTextureID/ImTextureRef!
// [X] Renderer: Texture updates support for dynamic font atlas (ImGuiBackendFlags_RendererHasTextures).
// [X] Renderer: Multi-viewport support (multiple windows). Enable with 'io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable'.
// Missing features or Issues:
// [ ] Renderer: Large meshes support (64k+ vertices) even with 16-bit indices (ImGuiBackendFlags_RendererHasVtxOffset).
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
// Learn about Dear ImGui:
// - FAQ https://dearimgui.com/faq
// - Getting Started https://dearimgui.com/getting-started
// - Documentation https://dearimgui.com/docs (same as your local docs/ folder).
// - Introduction, links and more at the top of imgui.cpp
// **DO NOT USE THIS CODE IF YOUR CODE/ENGINE IS USING MODERN OPENGL (SHADERS, VBO, VAO, etc.)**
// **Prefer using the code in imgui_impl_opengl3.cpp**
// This code is mostly provided as a reference to learn how ImGui integration works, because it is shorter to read.
// If your code is using GL3+ context or any semi modern OpenGL calls, using this is likely to make everything more
// complicated, will require your code to reset every single OpenGL attributes to their initial state, and might
// confuse your GPU driver.
// The GL2 code is unable to reset attributes or even call e.g. "glUseProgram(0)" because they don't exist in that API.
#pragma once
#ifdef __cplusplus
extern "C"
{
#endif
#include "dcimgui.h"
#ifndef IMGUI_DISABLE
typedef struct ImDrawData_t ImDrawData;
// Follow "Getting Started" link and check examples/ folder to learn about using backends!
CIMGUI_IMPL_API bool cImGui_ImplOpenGL2_Init(void);
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_Shutdown(void);
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_NewFrame(void);
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_RenderDrawData(ImDrawData* draw_data);
// Called by Init/NewFrame/Shutdown
CIMGUI_IMPL_API bool cImGui_ImplOpenGL2_CreateDeviceObjects(void);
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_DestroyDeviceObjects(void);
// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually.
CIMGUI_IMPL_API void cImGui_ImplOpenGL2_UpdateTexture(ImTextureData* tex);
#endif// #ifndef IMGUI_DISABLE
#ifdef __cplusplus
} // End of extern "C" block
#endif
@@ -0,0 +1,257 @@
{
"defines": [],
"enums": [],
"typedefs": [
{
"name": "ImDrawIdx",
"type": {
"declaration": "unsigned short",
"description": {
"kind": "Builtin",
"builtin_type": "unsigned_short"
}
},
"comments": {
"attached": "// Default: 16-bit (for maximum compatibility with renderer backends)"
},
"conditionals": [
{
"condition": "ifndef",
"expression": "ImDrawIdx"
}
],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_opengl2.h"
}
}
],
"structs": [
{
"name": "ImDrawData",
"original_fully_qualified_name": "ImDrawData",
"kind": "struct",
"by_value": false,
"forward_declaration": true,
"is_anonymous": false,
"fields": [],
"is_internal": false,
"source_location": {
"filename": "imgui_impl_opengl2.h",
"line": 1
}
}
],
"functions": [
{
"name": "cImGui_ImplOpenGL2_Init",
"original_fully_qualified_name": "ImGui_ImplOpenGL2_Init",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Follow \"Getting Started\" link and check examples/ folder to learn about using backends!"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_opengl2.h",
"line": 32
}
},
{
"name": "cImGui_ImplOpenGL2_Shutdown",
"original_fully_qualified_name": "ImGui_ImplOpenGL2_Shutdown",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_opengl2.h",
"line": 33
}
},
{
"name": "cImGui_ImplOpenGL2_NewFrame",
"original_fully_qualified_name": "ImGui_ImplOpenGL2_NewFrame",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_opengl2.h",
"line": 34
}
},
{
"name": "cImGui_ImplOpenGL2_RenderDrawData",
"original_fully_qualified_name": "ImGui_ImplOpenGL2_RenderDrawData",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "draw_data",
"type": {
"declaration": "ImDrawData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImDrawData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_opengl2.h",
"line": 35
}
},
{
"name": "cImGui_ImplOpenGL2_CreateDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplOpenGL2_CreateDeviceObjects",
"return_type": {
"declaration": "bool",
"description": {
"kind": "Builtin",
"builtin_type": "bool"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// Called by Init/NewFrame/Shutdown"
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_opengl2.h",
"line": 38
}
},
{
"name": "cImGui_ImplOpenGL2_DestroyDeviceObjects",
"original_fully_qualified_name": "ImGui_ImplOpenGL2_DestroyDeviceObjects",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"is_internal": false,
"source_location": {
"filename": "imgui_impl_opengl2.h",
"line": 39
}
},
{
"name": "cImGui_ImplOpenGL2_UpdateTexture",
"original_fully_qualified_name": "ImGui_ImplOpenGL2_UpdateTexture",
"return_type": {
"declaration": "void",
"description": {
"kind": "Builtin",
"builtin_type": "void"
}
},
"arguments": [
{
"name": "tex",
"type": {
"declaration": "ImTextureData*",
"description": {
"kind": "Pointer",
"inner_type": {
"kind": "User",
"name": "ImTextureData"
}
}
},
"is_array": false,
"is_varargs": false,
"is_instance_pointer": false
}
],
"is_default_argument_helper": false,
"is_manual_helper": false,
"is_imstr_helper": false,
"has_imstr_helper": false,
"is_unformatted_helper": false,
"is_static": false,
"comments": {
"preceding": [
"// (Advanced) Use e.g. if you need to precisely control the timing of texture updates (e.g. for staged rendering), by setting ImDrawData::Textures = nullptr to handle this manually."
]
},
"is_internal": false,
"source_location": {
"filename": "imgui_impl_opengl2.h",
"line": 42
}
}
]
}
@@ -0,0 +1,7 @@
{
"defines": [],
"enums": [],
"typedefs": [],
"structs": [],
"functions": []
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,138 @@
// THIS FILE HAS BEEN AUTO-GENERATED BY THE 'DEAR BINDINGS' GENERATOR.
// **DO NOT EDIT DIRECTLY**
// https://github.com/dearimgui/dear_bindings
#include "imgui.h"
#include "imgui_impl_opengl3.h"
#include <stdio.h>
// Wrap this in a namespace to keep it separate from the C++ API
// This define prevents #defines in the header getting defined again (as they are already in the normal header above),
// and thus generating redefinition warnings
#define DEAR_BINDINGS_INTERNAL_GLUE_CODE
namespace cimgui
{
#include "dcimgui_impl_opengl3.h"
}
#undef DEAR_BINDINGS_INTERNAL_GLUE_CODE
// By-value struct conversions
static inline cimgui::ImVec2 ConvertFromCPP_ImVec2(const ::ImVec2& src)
{
cimgui::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline ::ImVec2 ConvertToCPP_ImVec2(const cimgui::ImVec2& src)
{
::ImVec2 dest;
dest.x = src.x;
dest.y = src.y;
return dest;
}
static inline cimgui::ImVec4 ConvertFromCPP_ImVec4(const ::ImVec4& src)
{
cimgui::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline ::ImVec4 ConvertToCPP_ImVec4(const cimgui::ImVec4& src)
{
::ImVec4 dest;
dest.x = src.x;
dest.y = src.y;
dest.z = src.z;
dest.w = src.w;
return dest;
}
static inline cimgui::ImTextureRef ConvertFromCPP_ImTextureRef(const ::ImTextureRef& src)
{
cimgui::ImTextureRef dest;
dest._TexData = reinterpret_cast<cimgui::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline ::ImTextureRef ConvertToCPP_ImTextureRef(const cimgui::ImTextureRef& src)
{
::ImTextureRef dest;
dest._TexData = reinterpret_cast<::ImTextureData*>(src._TexData);
dest._TexID = src._TexID;
return dest;
}
static inline cimgui::ImColor ConvertFromCPP_ImColor(const ::ImColor& src)
{
cimgui::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
static inline ::ImColor ConvertToCPP_ImColor(const cimgui::ImColor& src)
{
::ImColor dest;
dest.Value.x = src.Value.x;
dest.Value.y = src.Value.y;
dest.Value.z = src.Value.z;
dest.Value.w = src.Value.w;
return dest;
}
// Function stubs
#ifndef IMGUI_DISABLE
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL3_Init(void)
{
return ::ImGui_ImplOpenGL3_Init();
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL3_InitEx(const char* glsl_version)
{
return ::ImGui_ImplOpenGL3_Init(glsl_version);
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_Shutdown(void)
{
::ImGui_ImplOpenGL3_Shutdown();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_NewFrame(void)
{
::ImGui_ImplOpenGL3_NewFrame();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_RenderDrawData(cimgui::ImDrawData* draw_data)
{
::ImGui_ImplOpenGL3_RenderDrawData(reinterpret_cast<::ImDrawData*>(draw_data));
}
CIMGUI_IMPL_API bool cimgui::cImGui_ImplOpenGL3_CreateDeviceObjects(void)
{
return ::ImGui_ImplOpenGL3_CreateDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_DestroyDeviceObjects(void)
{
::ImGui_ImplOpenGL3_DestroyDeviceObjects();
}
CIMGUI_IMPL_API void cimgui::cImGui_ImplOpenGL3_UpdateTexture(cimgui::ImTextureData* tex)
{
::ImGui_ImplOpenGL3_UpdateTexture(reinterpret_cast<::ImTextureData*>(tex));
}
#endif // #ifndef IMGUI_DISABLE

Some files were not shown because too many files have changed in this diff Show More