8#ifndef skgpu_graphite_VulkanResourceProvider_DEFINED
9#define skgpu_graphite_VulkanResourceProvider_DEFINED
16#ifdef SK_BUILD_FOR_ANDROID
24class VulkanCommandBuffer;
25class VulkanDescriptorSet;
26class VulkanFramebuffer;
27class VulkanGraphicsPipeline;
28class VulkanRenderPass;
29class VulkanSharedContext;
30class VulkanSamplerYcbcrConversion;
40 size_t resourceBudget,
67 std::string_view label)
override;
78#ifdef SK_BUILD_FOR_ANDROID
81 bool isProtectedContent,
83 bool fromAndroidWindow)
const override;
99 VkPipelineCache pipelineCache();
struct AHardwareBuffer AHardwareBuffer
sk_sp< Sampler > createSampler(const SamplerDesc &) override
sk_sp< Texture > createWrappedTexture(const BackendTexture &) override
sk_sp< Buffer > createBuffer(size_t size, BufferType type, AccessPattern, std::string_view label) override
const Buffer * loadMSAAVertexBuffer() const
static constexpr size_t kLoadMSAAVertexBufferSize
sk_sp< VulkanSamplerYcbcrConversion > findOrCreateCompatibleSamplerYcbcrConversion(const VulkanYcbcrConversionInfo &ycbcrInfo) const
void onDeleteBackendTexture(const BackendTexture &) override
BackendTexture onCreateBackendTexture(SkISize dimensions, const TextureInfo &) override
~VulkanResourceProvider() override
sk_sp< Texture > createTexture(SkISize, const TextureInfo &, skgpu::Budgeted) override
sk_sp< GraphicsPipeline > createGraphicsPipeline(const RuntimeEffectDictionary *, const GraphicsPipelineDesc &, const RenderPassDesc &) override
static constexpr size_t kIntrinsicConstantSize
sk_sp< ComputePipeline > createComputePipeline(const ComputePipelineDesc &) override
sk_sp< Buffer > refIntrinsicConstantBuffer() const