VKPhysicalDevice由struct改为class
This commit is contained in:
@@ -1,10 +1,10 @@
|
||||
#pragma once
|
||||
#pragma once
|
||||
|
||||
#include<hgl/graph/vulkan/VK.h>
|
||||
#include<hgl/type/BaseString.h>
|
||||
|
||||
VK_NAMESPACE_BEGIN
|
||||
struct PhysicalDevice
|
||||
class PhysicalDevice
|
||||
{
|
||||
VkInstance instance=nullptr;
|
||||
VkPhysicalDevice physical_device=nullptr;
|
||||
@@ -20,6 +20,9 @@ public:
|
||||
PhysicalDevice(VkInstance,VkPhysicalDevice);
|
||||
~PhysicalDevice()=default;
|
||||
|
||||
operator VkPhysicalDevice(){return physical_device;}
|
||||
operator const VkPhysicalDevice()const{return physical_device;}
|
||||
|
||||
const bool CheckMemoryType(uint32_t,VkFlags,uint32_t *)const;
|
||||
|
||||
VkPhysicalDeviceType GetDeviceType()const{return properties.deviceType;}
|
||||
@@ -35,8 +38,14 @@ public:
|
||||
const char * GetDriverName ()const{return driver_properties.driverName;}
|
||||
const char * GetDriverInfo ()const{return driver_properties.driverInfo;}
|
||||
|
||||
public:
|
||||
|
||||
const uint32_t GetConstantSize()const{return properties.limits.maxPushConstantsSize;}
|
||||
|
||||
public:
|
||||
|
||||
/**
|
||||
* <EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD>
|
||||
* 获取该设备是否是显卡
|
||||
*/
|
||||
const bool isGPU()const
|
||||
{
|
||||
@@ -47,9 +56,9 @@ public:
|
||||
return(false);
|
||||
}
|
||||
|
||||
const bool isDiscreteGPU ()const{return(properties.deviceType==VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU);} ///<<EFBFBD>Ƿ<EFBFBD><EFBFBD>Ƕ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD>
|
||||
const bool isIntegratedGPU ()const{return(properties.deviceType==VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU);} ///<<EFBFBD>Ƿ<EFBFBD><EFBFBD>Ǽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD>
|
||||
const bool isVirtualGPU ()const{return(properties.deviceType==VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU);} ///<<EFBFBD>Ƿ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Կ<EFBFBD>
|
||||
const bool isDiscreteGPU ()const{return(properties.deviceType==VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU);} ///<是否是独立显卡
|
||||
const bool isIntegratedGPU ()const{return(properties.deviceType==VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU);} ///<是否是集成显卡
|
||||
const bool isVirtualGPU ()const{return(properties.deviceType==VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU);} ///<是否是虚拟显卡
|
||||
|
||||
public:
|
||||
|
||||
@@ -61,5 +70,5 @@ public:
|
||||
|
||||
return fp;
|
||||
}
|
||||
};//struct PhysicalDevice
|
||||
};//class PhysicalDevice
|
||||
VK_NAMESPACE_END
|
Reference in New Issue
Block a user