diff options
Diffstat (limited to 'src/gpu/GrOpFlushState.h')
-rw-r--r-- | src/gpu/GrOpFlushState.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gpu/GrOpFlushState.h b/src/gpu/GrOpFlushState.h index b5cacfa0fe..42daab3960 100644 --- a/src/gpu/GrOpFlushState.h +++ b/src/gpu/GrOpFlushState.h @@ -245,6 +245,18 @@ public: return this->state()->allocPipeline(std::forward<Args>(args)...); } + GrPipeline* makePipeline(uint32_t pipelineFlags, const GrProcessorSet* processorSet) { + GrPipeline::InitArgs pipelineArgs; + pipelineArgs.fFlags = pipelineFlags; + pipelineArgs.fProcessors = processorSet; + pipelineArgs.fRenderTarget = this->renderTarget(); + pipelineArgs.fAppliedClip = this->clip(); + pipelineArgs.fDstProxy = this->dstProxy(); + pipelineArgs.fCaps = &this->caps(); + pipelineArgs.fResourceProvider = this->resourceProvider(); + return this->allocPipeline(pipelineArgs); + } + private: GrMeshDrawOp* meshDrawOp() { return static_cast<GrMeshDrawOp*>(this->op()); } typedef GrDrawOp::Target INHERITED; |