24 std::shared_ptr<ShellTestVsyncClock> vsync_clock,
26 std::shared_ptr<ShellTestExternalViewEmbedder>
27 shell_test_external_view_embedder);
37 std::shared_ptr<ShellTestExternalViewEmbedder>
38 shell_test_external_view_embedder);
40 ~OffScreenSurface()
override;
43 bool IsValid()
override;
46 std::unique_ptr<SurfaceFrame> AcquireFrame(
const DlISize&
size)
override;
49 DlMatrix GetRootTransformation()
const override;
52 GrDirectContext* GetContext()
override;
57 std::shared_ptr<ShellTestExternalViewEmbedder>
58 shell_test_external_view_embedder_;
59 std::unique_ptr<vulkan::VulkanApplication> application_;
60 std::unique_ptr<vulkan::VulkanDevice> logical_device_;
61 sk_sp<skgpu::VulkanMemoryAllocator> memory_allocator_;
62 sk_sp<GrDirectContext> context_;
64 bool CreateSkiaGrContext();
65 bool CreateSkiaBackendContext(skgpu::VulkanBackendContext*,
66 VkPhysicalDeviceFeatures*);
73 std::shared_ptr<ShellTestVsyncClock> vsync_clock_;
77 std::shared_ptr<ShellTestExternalViewEmbedder>
78 shell_test_external_view_embedder_;
81 std::unique_ptr<Surface> CreateRenderingSurface()
override;
84 std::shared_ptr<ExternalViewEmbedder> CreateExternalViewEmbedder()
override;
87 std::unique_ptr<VsyncWaiter> CreateVSyncWaiter()
override;