aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrOpFlushState.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/GrOpFlushState.h')
-rw-r--r--src/gpu/GrOpFlushState.h12
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;