1
0
mirror of https://github.com/borgesdan/xn65 synced 2024-12-29 21:54:47 +01:00
xn65/inc/xna/graphics/adapter.hpp

35 lines
982 B
C++
Raw Normal View History

2024-03-18 15:41:46 -03:00
#ifndef XNA_GRAPHICS_ADAPTER_HPP
#define XNA_GRAPHICS_ADAPTER_HPP
2024-04-24 11:44:41 -03:00
#include "../default.hpp"
2024-03-18 15:41:46 -03:00
namespace xna {
2024-05-19 17:52:27 -03:00
class GraphicsAdapter {
2024-03-18 15:41:46 -03:00
public:
2024-05-19 17:52:27 -03:00
GraphicsAdapter();
~GraphicsAdapter();
2024-03-18 15:41:46 -03:00
2024-05-19 17:52:27 -03:00
String Description() const;
Uint DeviceId() const;
String DeviceName() const;
bool IsDefaultAdapter() const;
intptr_t MonitorHandle() const;
Uint Revision() const;
Uint SubSystemId() const;
Uint VendorId() const;
uptr<DisplayModeCollection> SupportedDisplayModes() const;
uptr<DisplayModeCollection> SupportedDisplayModes(SurfaceFormat surfaceFormat) const;
sptr<DisplayMode> CurrentDisplayMode();
void CurrentDisplayMode(SurfaceFormat surfaceFormat, Uint width, Uint height);
2024-04-21 16:06:22 -03:00
2024-04-26 11:35:59 -03:00
static uptr<GraphicsAdapter> DefaultAdapter();
static void Adapters(std::vector<sptr<GraphicsAdapter>>& adapters);
static void Adapters(std::vector<uptr<GraphicsAdapter>>& adapters);
2024-05-19 17:52:27 -03:00
public:
struct PlatformImplementation;
uptr<PlatformImplementation> impl = nullptr;
2024-03-18 15:41:46 -03:00
};
}
#endif