diff options
Diffstat (limited to 'Source/Core/Common/WindowSystemInfo.h')
| -rw-r--r-- | Source/Core/Common/WindowSystemInfo.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Source/Core/Common/WindowSystemInfo.h b/Source/Core/Common/WindowSystemInfo.h new file mode 100644 index 0000000000..897d034c2c --- /dev/null +++ b/Source/Core/Common/WindowSystemInfo.h @@ -0,0 +1,35 @@ +// Copyright 2018 Dolphin Emulator Project +// Licensed under GPLv2+ +// Refer to the license.txt file included. + +#pragma once + +enum class WindowSystemType +{ + Headless, + Windows, + MacOS, + Android, + X11, + Wayland +}; + +struct WindowSystemInfo +{ + WindowSystemInfo() = default; + WindowSystemInfo(WindowSystemType type_, void* display_connection_, void* render_surface_) + : type(type_), display_connection(display_connection_), render_surface(render_surface_) + { + } + + // Window system type. Determines which GL context or Vulkan WSI is used. + WindowSystemType type = WindowSystemType::Headless; + + // Connection to a display server. This is used on X11 and Wayland platforms. + void* display_connection = nullptr; + + // Render surface. This is a pointer to the native window handle, which depends + // on the platform. e.g. HWND for Windows, Window for X11. If the surface is + // set to nullptr, the video backend will run in headless mode. + void* render_surface = nullptr; +}; |
