port from perforce

This commit is contained in:
2026-04-18 22:31:51 +02:00
commit 8d0ab5b7cc
8409 changed files with 3972376 additions and 0 deletions

View File

@@ -0,0 +1,70 @@
#pragma once
#include "Resource.h"
#include <vector>
struct IOutputDevice;
struct IDisplayAdapter;
struct IDisplayMode;
struct __declspec(novtable) IDeviceEnumerator
{
virtual ~IDeviceEnumerator() {}
virtual bool get_HasEnumerated() const = 0;
virtual const std::vector<IDisplayAdapter*>& get_DeviceAdapters() const = 0;
virtual bool TryEnumerate(uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown) = 0;
virtual IDisplayAdapter* FindBestAdapter(bool argAllowToEnumerate = false, uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown) = 0;
virtual IOutputDevice* FindBestOutput(bool argAllowToEnumerate = false, uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown) = 0;
virtual IDisplayMode* FindBestDisplayMode(bool argAllowToEnumerate = false, uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown) = 0;
virtual void Verbose() = 0;
};
struct IDXGIAdapter;
struct __declspec(novtable) IDisplayAdapter
{
virtual ~IDisplayAdapter() {}
virtual size_t get_DedicatedSystemMemory() const = 0;
virtual size_t get_DedicatedVideoMemory() const = 0;
virtual size_t get_SharedSystemMemory() const = 0;
virtual const std::vector<IOutputDevice*>& get_DeviceOutputs() const = 0;
virtual bool get_HasEnumerated() const = 0;
virtual IDXGIAdapter* get_Adapter() const = 0;
virtual string16 get_Name() const = 0;
virtual bool TryEnumerate(uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown) = 0;
virtual IOutputDevice* FindBestOutput(bool argAllowToEnumerate = false, uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown) = 0;
virtual IDisplayMode* FindBestDisplayMode(bool argAllowToEnumerate = false, uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown) = 0;
};
struct __declspec(novtable) IOutputDevice
{
virtual ~IOutputDevice() {}
virtual bool get_IsAttachedToDesktop() const = 0;
virtual HMONITOR get_MonitorHandle() const = 0;
virtual RECT get_DesktopCoordinates() const = 0;
virtual const std::vector<IDisplayMode*>& get_DisplayModes() const = 0;
virtual bool get_HasEnumerated() const = 0;
virtual bool TryEnumerate(uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown) = 0;
virtual IDisplayMode* FindBestDisplayMode(bool argAllowToEnumerate = false, uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown) = 0;
virtual string16 get_Name() const = 0;
};
struct __declspec(novtable) IDisplayMode
{
virtual ~IDisplayMode() {}
virtual uint32 get_Width() const = 0;
virtual uint32 get_Height() const = 0;
virtual uint32 get_RefreshRate() const = 0;
virtual DataFormat::Enumeration get_Format() const = 0;
};