1 /* 2 * Copyright 2021 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_GraphicsPipeline_DEFINED 9 #define skgpu_GraphicsPipeline_DEFINED 10 11 #include "include/core/SkRefCnt.h" 12 13 namespace skgpu { 14 15 /** 16 * GraphicsPipeline corresponds to a backend specific pipeline used for rendering (vs. compute), 17 * e.g. MTLRenderPipelineState (Metal), 18 * CreateRenderPipeline (Dawn), 19 * CreateGraphicsPipelineState (D3D12), 20 * or VkGraphicsPipelineCreateInfo (Vulkan). 21 * 22 * A GraphicsPipeline is created from the combination of a GraphicsPipelineDesc (representing draw 23 * specific configuration) and a RenderPassDesc (representing the target of the draw). 24 */ 25 class GraphicsPipeline : public SkRefCnt { 26 public: 27 ~GraphicsPipeline() override; 28 29 protected: 30 GraphicsPipeline(); 31 32 private: 33 }; 34 35 } // namespace skgpu 36 37 #endif // skgpu_GraphicsPipeline_DEFINED 38