34 lines
1.5 KiB
C++
34 lines
1.5 KiB
C++
#pragma once
|
|
|
|
#include "IDeviceEnumerator.h"
|
|
|
|
|
|
class DeviceEnumerator
|
|
: public IDeviceEnumerator
|
|
{
|
|
public:
|
|
DeviceEnumerator(ID3D10Device* ar_Device_ = NULL);
|
|
virtual ~DeviceEnumerator();
|
|
|
|
virtual bool get_HasEnumerated() const { return m_HasEnumerated; }
|
|
virtual const std::vector<IDisplayAdapter*>& get_DeviceAdapters() const { return m_EnumeratedAdapters; }
|
|
|
|
virtual bool TryEnumerate(uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown);
|
|
virtual IDisplayAdapter* FindBestAdapter(bool argAllowToEnumerate = false, uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown);
|
|
virtual IOutputDevice* FindBestOutput(bool argAllowToEnumerate = false, uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown);
|
|
virtual IDisplayMode* FindBestDisplayMode(bool argAllowToEnumerate = false, uint32 argDesiredWidth = 0, uint32 argDesiredHeight = 0, uint32 argDesiredRefreshRate = 0, DataFormat::Enumeration argDesiredFormat = DataFormat::Unknown);
|
|
|
|
virtual void Verbose();
|
|
|
|
private:
|
|
IDXGIFactory* m_DXGIFactory;
|
|
ID3D10Device* m_Device;
|
|
bool m_HasEnumerated;
|
|
|
|
std::vector<IDisplayAdapter*> m_EnumeratedAdapters;
|
|
uint32 m_DesiredWidth;
|
|
uint32 m_DesiredHeight;
|
|
uint32 m_DesiredRefreshRate;
|
|
DataFormat::Enumeration m_DesiredFormat;
|
|
};
|