port from perforce
This commit is contained in:
54
aiwaz/Aiwaz.Contracts/IDeviceEnumerator.cs
Normal file
54
aiwaz/Aiwaz.Contracts/IDeviceEnumerator.cs
Normal file
@@ -0,0 +1,54 @@
|
||||
using System.Collections.Generic;
|
||||
using SlimDX.DXGI;
|
||||
using System.Drawing;
|
||||
namespace Aiwaz.Contracts
|
||||
{
|
||||
public interface IDeviceEnumerator
|
||||
{
|
||||
bool HasEnumerated { get; }
|
||||
List<IDisplayAdapter> DeviceAdapters { get; }
|
||||
|
||||
bool TryEnumerate(uint? argDesiredWidth, uint? argDesiredHeight, uint? argDesiredRefreshRate, DataFormat? argDesiredFormat);
|
||||
IDisplayAdapter FindBestAdapter(bool argAllowToEnumerate, uint? argDesiredWidth, uint? argDesiredHeight, uint? argDesiredRefreshRate, DataFormat? argDesiredFormat);
|
||||
IOutputDevice FindBestOutput(bool argAllowToEnumerate, uint? argDesiredWidth, uint? argDesiredHeight, uint? argDesiredRefreshRate, DataFormat? argDesiredFormat);
|
||||
IDisplayMode FindBestDisplayMode(bool argAllowToEnumerate, uint? argDesiredWidth, uint? argDesiredHeight, uint? argDesiredRefreshRate, DataFormat? argDesiredFormat);
|
||||
|
||||
void Verbose();
|
||||
};
|
||||
|
||||
public interface IDisplayAdapter
|
||||
{
|
||||
long DedicatedSystemMemory { get; }
|
||||
long DedicatedVideoMemory { get; }
|
||||
long SharedSystemMemory { get; }
|
||||
List<IOutputDevice> DeviceOutputs { get; }
|
||||
bool HasEnumerated { get; }
|
||||
Adapter Adapter { get; }
|
||||
string Name { get; }
|
||||
|
||||
bool TryEnumerate(uint? argDesiredWidth, uint? argDesiredHeight, uint? argDesiredRefreshRate, DataFormat? argDesiredFormat);
|
||||
IOutputDevice FindBestOutput(bool argAllowToEnumerate, uint? argDesiredWidth, uint? argDesiredHeight, uint? argDesiredRefreshRate, DataFormat? argDesiredFormat);
|
||||
IDisplayMode FindBestDisplayMode(bool argAllowToEnumerate, uint? argDesiredWidth, uint? argDesiredHeight, uint? argDesiredRefreshRate, DataFormat? argDesiredFormat);
|
||||
};
|
||||
|
||||
public interface IOutputDevice
|
||||
{
|
||||
bool IsAttachedToDesktop { get; }
|
||||
object MonitorHandle { get; }
|
||||
Rectangle DesktopCoordinates { get; }
|
||||
List<IDisplayMode> DisplayModes { get; }
|
||||
bool HasEnumerated { get; }
|
||||
string Name { get; }
|
||||
|
||||
bool TryEnumerate(uint? argDesiredWidth, uint? argDesiredHeight, uint? argDesiredRefreshRate, DataFormat? argDesiredFormat);
|
||||
IDisplayMode FindBestDisplayMode(bool argAllowToEnumerate, uint? argDesiredWidth, uint? argDesiredHeight, uint? argDesiredRefreshRate, DataFormat? argDesiredFormat);
|
||||
};
|
||||
|
||||
public interface IDisplayMode
|
||||
{
|
||||
uint Width { get; }
|
||||
uint Height { get; }
|
||||
uint RefreshRate { get; }
|
||||
DataFormat Format { get; }
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user