18 #ifndef INCLUDED_RENDERER_BACKEND_VULKAN_DEVICESELECTION 19 #define INCLUDED_RENDERER_BACKEND_VULKAN_DEVICESELECTION 23 #include <glad/vulkan.h> 42 VkPhysicalDevice
device = VK_NULL_HANDLE;
69 VkInstance instance, VkSurfaceKHR surface,
70 const std::vector<const char*>& requiredDeviceExtensions);
90 const VkSurfaceFormatKHR& surfaceFormat);
104 #endif // INCLUDED_RENDERER_BACKEND_VULKAN_DEVICESELECTION VkDeviceSize deviceTotalMemory
Definition: DeviceSelection.h:53
std::vector< VkSurfaceFormatKHR > surfaceFormats
Definition: DeviceSelection.h:57
bool IsSurfaceFormatSupported(const VkSurfaceFormatKHR &surfaceFormat)
Definition: DeviceSelection.cpp:322
bool hasOutputToSurfaceSupport
Definition: DeviceSelection.h:50
uint32_t index
Definition: DeviceSelection.h:41
std::vector< VkPresentModeKHR > presentModes
Definition: DeviceSelection.h:58
VkPhysicalDeviceDescriptorIndexingFeaturesEXT descriptorIndexingFeatures
Definition: DeviceSelection.h:47
void ReportAvailablePhysicalDevice(const SAvailablePhysicalDevice &device, const ScriptRequest &rq, JS::HandleValue settings)
Report all desired information about the available physical device.
Definition: DeviceSelection.cpp:331
std::vector< std::string > extensions
Definition: DeviceSelection.h:55
bool ComparePhysicalDevices(const SAvailablePhysicalDevice &device1, const SAvailablePhysicalDevice &device2)
Definition: DeviceSelection.cpp:309
bool IsPhysicalDeviceUnsupported(const SAvailablePhysicalDevice &device)
Definition: DeviceSelection.cpp:291
VkPhysicalDeviceFeatures features
Definition: DeviceSelection.h:46
VkPhysicalDeviceProperties properties
Definition: DeviceSelection.h:43
VkSurfaceCapabilitiesKHR surfaceCapabilities
Definition: DeviceSelection.h:56
VkPhysicalDeviceDescriptorIndexingPropertiesEXT descriptorIndexingProperties
Definition: DeviceSelection.h:44
std::vector< SAvailablePhysicalDevice > GetAvailablePhysicalDevices(VkInstance instance, VkSurfaceKHR surface, const std::vector< const char *> &requiredDeviceExtensions)
Definition: DeviceSelection.cpp:268
Backend
Definition: Backend.h:27
size_t graphicsQueueFamilyIndex
Definition: DeviceSelection.h:51
VkDeviceSize hostTotalMemory
Definition: DeviceSelection.h:54
unsigned int uint32_t
Definition: wposix_types.h:53
Definition: VideoMode.h:28
VkPhysicalDeviceMemoryProperties memoryProperties
Definition: DeviceSelection.h:45
bool hasRequiredExtensions
Definition: DeviceSelection.h:49
VkPhysicalDevice device
Definition: DeviceSelection.h:42
std::vector< VkQueueFamilyProperties > queueFamilies
Definition: DeviceSelection.h:48
Spidermonkey maintains some 'local' state via the JSContext* object.
Definition: ScriptRequest.h:59
Structure to store all information that might be useful on device selection.
Definition: DeviceSelection.h:39
size_t presentQueueFamilyIndex
Definition: DeviceSelection.h:52