Index: src/gpu/vk/GrVkResourceProvider.h |
diff --git a/src/gpu/vk/GrVkResourceProvider.h b/src/gpu/vk/GrVkResourceProvider.h |
index 245062ea8df4827f69713b115373063ecd3400ac..38d6c401879f8c9bf2f149be3932dd77c0785ca4 100644 |
--- a/src/gpu/vk/GrVkResourceProvider.h |
+++ b/src/gpu/vk/GrVkResourceProvider.h |
@@ -28,6 +28,9 @@ public: |
GrVkResourceProvider(GrVkGpu* gpu); |
~GrVkResourceProvider(); |
+ // Set up any initial vk objects |
+ void init(); |
+ |
GrVkPipeline* createPipeline(const GrPipeline& pipeline, |
const GrPrimitiveProcessor& primProc, |
VkPipelineShaderStageCreateInfo* shaderStageInfo, |
@@ -66,6 +69,9 @@ public: |
private: |
GrVkGpu* fGpu; |
+ // Central cache for creating pipelines |
+ VkPipelineCache fPipelineCache; |
+ |
// Array of RenderPasses that only have a single color attachment, optional stencil attachment, |
// optional resolve attachment, and only one subpass |
SkSTArray<4, GrVkRenderPass*> fSimpleRenderPasses; |