MCPcopy Create free account
hub / github.com/Overv/VulkanTutorial / findQueueFamilies

Method findQueueFamilies

code/24_texture_image.cpp:1317–1347  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1315 }
1316
1317 QueueFamilyIndices findQueueFamilies(VkPhysicalDevice device) {
1318 QueueFamilyIndices indices;
1319
1320 uint32_t queueFamilyCount = 0;
1321 vkGetPhysicalDeviceQueueFamilyProperties(device, &queueFamilyCount, nullptr);
1322
1323 std::vector<VkQueueFamilyProperties> queueFamilies(queueFamilyCount);
1324 vkGetPhysicalDeviceQueueFamilyProperties(device, &queueFamilyCount, queueFamilies.data());
1325
1326 int i = 0;
1327 for (const auto& queueFamily : queueFamilies) {
1328 if (queueFamily.queueFlags & VK_QUEUE_GRAPHICS_BIT) {
1329 indices.graphicsFamily = i;
1330 }
1331
1332 VkBool32 presentSupport = false;
1333 vkGetPhysicalDeviceSurfaceSupportKHR(device, i, surface, &presentSupport);
1334
1335 if (presentSupport) {
1336 indices.presentFamily = i;
1337 }
1338
1339 if (indices.isComplete()) {
1340 break;
1341 }
1342
1343 i++;
1344 }
1345
1346 return indices;
1347 }
1348
1349 std::vector<const char*> getRequiredExtensions() {
1350 uint32_t glfwExtensionCount = 0;

Callers

nothing calls this directly

Calls 1

isCompleteMethod · 0.45

Tested by

no test coverage detected