Flutter Engine
The Flutter Engine
VulkanSampler.h
Go to the documentation of this file.
1/*
2 * Copyright 2023 Google LLC
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#ifndef skgpu_graphite_VulkanSampler_DEFINED
9#define skgpu_graphite_VulkanSampler_DEFINED
10
14
17
19
20namespace skgpu::graphite {
21
22class VulkanSampler : public Sampler {
23public:
25 const SkSamplingOptions&,
26 SkTileMode xTileMode,
27 SkTileMode yTileMode,
29
30 ~VulkanSampler() override {}
31
32 VkSampler vkSampler() const { return fSampler; }
33
34 const VulkanYcbcrConversion* ycbcrConversion() const { return fYcbcrConversion.get(); }
35
36private:
38
39 void freeGpuData() override;
40
41 VkSampler fSampler;
42 sk_sp<VulkanYcbcrConversion> fYcbcrConversion;
43};
44
45} // namepsace skgpu::graphite
46
47#endif // skgpu_graphite_VulkanSampler_DEFINED
SkTileMode
Definition: SkTileMode.h:13
const VulkanYcbcrConversion * ycbcrConversion() const
Definition: VulkanSampler.h:34
static sk_sp< VulkanSampler > Make(const VulkanSharedContext *, const SkSamplingOptions &, SkTileMode xTileMode, SkTileMode yTileMode, sk_sp< VulkanYcbcrConversion > ycbcrConversion=nullptr)