#include <embedder.h>
Public Attributes | |
| size_t | struct_size |
| The size of this struct. Must be sizeof(FlutterVulkanRendererConfig). | |
| uint32_t | version |
| FlutterVulkanInstanceHandle | instance |
| FlutterVulkanPhysicalDeviceHandle | physical_device |
| VkPhysicalDevice handle. | |
| FlutterVulkanDeviceHandle | device |
| uint32_t | queue_family_index |
| The queue family index of the VkQueue supplied in the next field. | |
| FlutterVulkanQueueHandle | queue |
| size_t | enabled_instance_extension_count |
| const char ** | enabled_instance_extensions |
| size_t | enabled_device_extension_count |
| const char ** | enabled_device_extensions |
| FlutterVulkanInstanceProcAddressCallback | get_instance_proc_address_callback |
| FlutterVulkanImageCallback | get_next_image_callback |
| FlutterVulkanPresentCallback | present_image_callback |
Definition at line 954 of file embedder.h.
| FlutterVulkanDeviceHandle FlutterVulkanRendererConfig::device |
VkDevice handle. Must not be destroyed before FlutterEngineShutdown is called.
Definition at line 968 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| size_t FlutterVulkanRendererConfig::enabled_device_extension_count |
The number of device extensions available for enumerating in the next field.
Definition at line 990 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| const char** FlutterVulkanRendererConfig::enabled_device_extensions |
Array of enabled logical device extension names. This should match the names passed to VkDeviceCreateInfo.ppEnabledExtensionNames when the logical device was created, but any subset of enabled logical device extensions may be specified. This field is optional; nullptr may be specified. This memory is only accessed during the call to FlutterEngineInitialize. For example: VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME
Definition at line 998 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| size_t FlutterVulkanRendererConfig::enabled_instance_extension_count |
The number of instance extensions available for enumerating in the next field.
Definition at line 980 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| const char** FlutterVulkanRendererConfig::enabled_instance_extensions |
Array of enabled instance extension names. This should match the names passed to VkInstanceCreateInfo.ppEnabledExtensionNames when the instance was created, but any subset of enabled instance extensions may be specified. This field is optional; nullptr may be specified. This memory is only accessed during the call to FlutterEngineInitialize.
Definition at line 987 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| FlutterVulkanInstanceProcAddressCallback FlutterVulkanRendererConfig::get_instance_proc_address_callback |
The callback invoked when resolving Vulkan function pointers. At a bare minimum this should be used to swap out any calls that operate on vkQueue's for threadsafe variants that obtain locks for their duration. The functions to swap out are "vkQueueSubmit" and "vkQueueWaitIdle". An example of how to do that can be found in the test "EmbedderTest.CanSwapOutVulkanCalls" unit-test in //shell/platform/embedder/tests/embedder_vk_unittests.cc.
Definition at line 1006 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), main(), and flutter::testing::EmbedderTestContextVulkan::SetVulkanInstanceProcAddressCallback().
| FlutterVulkanImageCallback FlutterVulkanRendererConfig::get_next_image_callback |
The callback invoked when the engine requests a VkImage from the embedder for rendering the next frame. Not used if a FlutterCompositor is supplied in FlutterProjectArgs.
Definition at line 1010 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| FlutterVulkanInstanceHandle FlutterVulkanRendererConfig::instance |
VkInstance handle. Must not be destroyed before FlutterEngineShutdown is called.
Definition at line 963 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| FlutterVulkanPhysicalDeviceHandle FlutterVulkanRendererConfig::physical_device |
VkPhysicalDevice handle.
Definition at line 965 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| FlutterVulkanPresentCallback FlutterVulkanRendererConfig::present_image_callback |
The callback invoked when a VkImage has been written to and is ready for use by the embedder. Prior to calling this callback, the engine performs a host sync, and so the VkImage can be used in a pipeline by the embedder without any additional synchronization. Not used if a FlutterCompositor is supplied in FlutterProjectArgs.
Definition at line 1016 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| FlutterVulkanQueueHandle FlutterVulkanRendererConfig::queue |
VkQueue handle. The queue should not be used without protection from a mutex to make sure it is not used simultaneously with other threads. That mutex should match the one injected via the |get_instance_proc_address_callback|. There is a proposal to remove the need for the mutex at https://github.com/flutter/flutter/issues/134573.
Definition at line 977 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| uint32_t FlutterVulkanRendererConfig::queue_family_index |
The queue family index of the VkQueue supplied in the next field.
Definition at line 970 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().
| size_t FlutterVulkanRendererConfig::struct_size |
The size of this struct. Must be sizeof(FlutterVulkanRendererConfig).
Definition at line 956 of file embedder.h.
Referenced by flutter::testing::EmbedderTestContextVulkan::EmbedderTestContextVulkan(), and main().
| uint32_t FlutterVulkanRendererConfig::version |
The Vulkan API version. This should match the value set in VkApplicationInfo::apiVersion when the VkInstance was created.
Definition at line 960 of file embedder.h.
Referenced by InferVulkanPlatformViewCreationCallback(), and main().