Lines Matching refs:fb

282     std::unique_ptr<FrameBuffer> fb(new FrameBuffer(width, height, features, useSubWindow));  in initialize()  local
283 if (!fb) { in initialize()
297 fb->m_renderDoc = emugl::RenderDoc::create(renderdocLib); in initialize()
298 if (fb->m_renderDoc) { in initialize()
301 std::make_unique<emugl::RenderDocWithMultipleVkInstances>(*fb->m_renderDoc); in initialize()
317 if (fb->m_features.Vulkan.enabled) { in initialize()
319 vkEmu = vk::createGlobalVkEmulation(vkDispatch, fb->m_features); in initialize()
323 fb->m_emulationVk = vkEmu; in initialize()
326 fb->m_vulkanEnabled = true; in initialize()
327 if (fb->m_features.VulkanNativeSwapchain.enabled) { in initialize()
328 fb->m_vkInstance = vkEmu->instance; in initialize()
333 memcpy(fb->m_vulkanUUID.data(), vkEmu->deviceInfo.idProps.deviceUUID, VK_UUID_SIZE); in initialize()
342 if (!fb->m_features.GuestUsesAngle.enabled) { in initialize()
343fb->m_emulationGl = EmulationGl::create(width, height, fb->m_features, useSubWindow, egl2egl); in initialize()
344 if (!fb->m_emulationGl) { in initialize()
351 fb->m_guestUsesAngle = fb->m_features.GuestUsesAngle.enabled; in initialize()
353 fb->m_useVulkanComposition = fb->m_features.GuestUsesAngle.enabled || in initialize()
354 fb->m_features.VulkanNativeSwapchain.enabled; in initialize()
366 .useVulkanComposition = fb->m_useVulkanComposition, in initialize()
367 .useVulkanNativeSwapchain = fb->m_features.VulkanNativeSwapchain.enabled, in initialize()
372 .guestUsesAngle = fb->m_guestUsesAngle, in initialize()
381 vkEmu && fb->m_features.VulkanNativeSwapchain.enabled && fb->m_guestUsesAngle; in initialize()
384 fb->m_graphicsAdapterVendor = vkEmu->deviceInfo.driverVendor; in initialize()
385 fb->m_graphicsAdapterName = vkEmu->deviceInfo.physdevProps.deviceName; in initialize()
395 fb->m_graphicsApiVersion = versionStringBuilder.str(); in initialize()
405 fb->m_graphicsApiExtensions = instanceExtensionsStringBuilder.str(); in initialize()
415 fb->m_graphicsDeviceExtensions = deviceExtensionsStringBuilder.str(); in initialize()
416 } else if (fb->m_emulationGl) { in initialize()
418 fb->m_graphicsAdapterVendor = fb->m_emulationGl->getGlesVendor(); in initialize()
419 fb->m_graphicsAdapterName = fb->m_emulationGl->getGlesRenderer(); in initialize()
420 fb->m_graphicsApiVersion = fb->m_emulationGl->getGlesVersionString(); in initialize()
421 fb->m_graphicsApiExtensions = fb->m_emulationGl->getGlesExtensionsString(); in initialize()
422 fb->m_graphicsDeviceExtensions = "N/A"; in initialize()
425 fb->m_graphicsAdapterVendor = "N/A"; in initialize()
426 fb->m_graphicsAdapterName = "N/A"; in initialize()
427 fb->m_graphicsApiVersion = "N/A"; in initialize()
428 fb->m_graphicsApiExtensions = "N/A"; in initialize()
429 fb->m_graphicsDeviceExtensions = "N/A"; in initialize()
444 if (!fb->m_emulationGl) { in initialize()
448 if (!fb->m_emulationGl->isGlesVulkanInteropSupported()) { in initialize()
451 const auto& glesDeviceUuid = fb->m_emulationGl->getGlesDeviceUuid(); in initialize()
452 if (!glesDeviceUuid || glesDeviceUuid != fb->m_vulkanUUID) { in initialize()
463 fb->m_vulkanInteropSupported = vulkanInteropSupported; in initialize()
464 GL_LOG("interop? %d", fb->m_vulkanInteropSupported); in initialize()
467 if (vulkanInteropSupported && fb->m_emulationGl && fb->m_emulationGl->isMesa()) { in initialize()
474 GL_LOG("glvk interop final: %d", fb->m_vulkanInteropSupported); in initialize()
475 vkEmulationFeatures->glInteropSupported = fb->m_vulkanInteropSupported; in initialize()
476 if (fb->m_features.Vulkan.enabled) { in initialize()
479 fb->m_displayVk = vkEmu->displayVk.get(); in initialize()
480 fb->m_displaySurfaceUsers.push_back(fb->m_displayVk); in initialize()
484 if (fb->m_useVulkanComposition) { in initialize()
490 fb->m_compositor = vkEmu->compositorVk.get(); in initialize()
494 auto compositorGl = fb->m_emulationGl->getCompositor(); in initialize()
495 fb->m_compositor = compositorGl; in initialize()
500 if (fb->m_emulationGl) { in initialize()
501 auto displayGl = fb->m_emulationGl->getDisplay(); in initialize()
502 fb->m_displayGl = displayGl; in initialize()
503 fb->m_displaySurfaceUsers.push_back(displayGl); in initialize()
507 INFO("Graphics Adapter Vendor %s", fb->m_graphicsAdapterVendor.c_str()); in initialize()
508 INFO("Graphics Adapter %s", fb->m_graphicsAdapterName.c_str()); in initialize()
509 INFO("Graphics API Version %s", fb->m_graphicsApiVersion.c_str()); in initialize()
510 INFO("Graphics API Extensions %s", fb->m_graphicsApiExtensions.c_str()); in initialize()
511 INFO("Graphics Device Extensions %s", fb->m_graphicsDeviceExtensions.c_str()); in initialize()
513 if (fb->m_useVulkanComposition) { in initialize()
514 fb->m_postWorker.reset(new PostWorkerVk(fb.get(), fb->m_compositor, fb->m_displayVk)); in initialize()
520 new PostWorkerGl(shouldPostOnlyOnMainThread, fb.get(), fb->m_compositor, in initialize()
521 fb->m_displayGl, fb->m_emulationGl.get()); in initialize()
522 fb->m_postWorker.reset(postWorkerGl); in initialize()
523 fb->m_displaySurfaceUsers.push_back(postWorkerGl); in initialize()
531 /* hasGL */ fb->m_emulationGl != nullptr, fb->getHealthMonitor()); in initialize()
535 fb->m_vsyncThread.reset(new VsyncThread((uint64_t)kOneSecondNs / (uint64_t)fb->m_vsyncHz)); in initialize()
540 s_theFrameBuffer = fb.release(); in initialize()
552 FrameBuffer* fb = s_theFrameBuffer; in finalize() local
554 if (fb) { in finalize()
555 delete fb; in finalize()
831 auto fb = static_cast<FrameBuffer*>(param); in subWindowRepaint() local
832 fb->repost(); in subWindowRepaint()
3237 auto fb = FrameBuffer::getFB(); in createEmulatedEglFenceSync() local