physical device retrieval functions
This commit is contained in:
@@ -3,9 +3,13 @@
|
||||
#include "utils/gryphn_string.h"
|
||||
#include "gryphn_handles.h"
|
||||
|
||||
typedef enum gnDeviceType {
|
||||
GN_DEDICATED_DEVICE, GN_INTEGRATED_DEVICE, GN_EXTERNAL_DEVICE
|
||||
} gnDeviceType;
|
||||
typedef enum gnPhysicalDeviceType {
|
||||
GN_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU,
|
||||
GN_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU,
|
||||
GN_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU,
|
||||
GN_PHYSICAL_DEVICE_TYPE_FAKED_GPU,
|
||||
GN_PHYSICAL_DEVICE_TYPE_CPU,
|
||||
} gnPhysicalDeviceType;
|
||||
|
||||
typedef enum gnMultisampleCountFlags {
|
||||
GN_SAMPLE_BIT_1 = 1 << 0, // 0x01
|
||||
@@ -18,8 +22,10 @@ typedef enum gnMultisampleCountFlags {
|
||||
} gnMultisampleCountFlags;
|
||||
|
||||
typedef struct gnPhysicalDeviceProperties {
|
||||
gnString name;
|
||||
gnDeviceType deviceType;
|
||||
uint32_t driverVersion;
|
||||
uint32_t deviceID;
|
||||
gnString deviceName;
|
||||
gnPhysicalDeviceType deviceType;
|
||||
} gnPhysicalDeviceProperties;
|
||||
|
||||
typedef struct gnPhysicalDeviceFeatures {
|
||||
|
@@ -9,6 +9,7 @@ typedef struct gnInstanceCreateInfo gnInstanceCreateInfo;
|
||||
typedef struct gnSurfaceDetails gnSurfaceDetails;
|
||||
typedef struct gnOutputDeviceInfo gnOutputDeviceInfo;
|
||||
typedef enum gnSuitableField gnSuitableField;
|
||||
typedef struct gnPhysicalDeviceProperties gnPhysicalDeviceProperties;
|
||||
|
||||
#ifdef GN_PLATFORM_LINUX
|
||||
#ifdef GN_WINDOW_X11
|
||||
@@ -25,6 +26,8 @@ typedef gnBool (*PFN_gnIsInstanceSuitable)(gnInstanceHandle, gnSuitableField, gr
|
||||
typedef gnReturnCode (*PFN_gnInstanceQueryDevices)(gnInstanceHandle, uint32_t*, gnPhysicalDeviceHandle*, gryphnInstanceFunctionLayers*);
|
||||
typedef void (*PFN_gnDestroyInstance)(gnInstanceHandle, gryphnInstanceFunctionLayers*, gnAllocators*);
|
||||
|
||||
typedef gnPhysicalDeviceProperties (*PFN_gnQueryPhysicalDeviceProperties)(gnInstance, gnPhysicalDeviceHandle);
|
||||
|
||||
typedef struct gnInstanceFunctions {
|
||||
gnBool (*_gnPhysicalDeviceCanPresentToSurface)(gnPhysicalDevice device, gnWindowSurfaceHandle windowSurface);
|
||||
|
||||
|
Reference in New Issue
Block a user