25#if defined(SHELL_ENABLE_GL)
26 return BackendType::kGLBackend;
27#elif defined(SHELL_ENABLE_METAL)
28 return BackendType::kMetalBackend;
29#elif defined(SHELL_ENABLE_VULKAN)
30 return BackendType::kVulkanBackend;
32 FML_LOG(FATAL) <<
"No backend is enabled in this build.";
37 static std::unique_ptr<ShellTestPlatformView>
Create(
41 const std::shared_ptr<ShellTestVsyncClock>& vsync_clock,
43 const std::shared_ptr<ShellTestExternalViewEmbedder>&
44 shell_test_external_view_embedder,
45 const std::shared_ptr<const fml::SyncSwitch>&
46 is_gpu_disabled_sync_switch);
55 static std::unique_ptr<ShellTestPlatformView>
CreateGL(
58 const std::shared_ptr<ShellTestVsyncClock>& vsync_clock,
60 const std::shared_ptr<ShellTestExternalViewEmbedder>&
61 shell_test_external_view_embedder,
62 const std::shared_ptr<const fml::SyncSwitch>&
63 is_gpu_disabled_sync_switch);
64 static std::unique_ptr<ShellTestPlatformView>
CreateMetal(
67 const std::shared_ptr<ShellTestVsyncClock>& vsync_clock,
69 const std::shared_ptr<ShellTestExternalViewEmbedder>&
70 shell_test_external_view_embedder,
71 const std::shared_ptr<const fml::SyncSwitch>&
72 is_gpu_disabled_sync_switch);
73 static std::unique_ptr<ShellTestPlatformView>
CreateVulkan(
76 const std::shared_ptr<ShellTestVsyncClock>& vsync_clock,
78 const std::shared_ptr<ShellTestExternalViewEmbedder>&
79 shell_test_external_view_embedder,
80 const std::shared_ptr<const fml::SyncSwitch>&
81 is_gpu_disabled_sync_switch);