aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrPipeline.cpp
diff options
context:
space:
mode:
authorGravatar Brian Salomon <bsalomon@google.com>2017-08-09 16:02:19 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-08-09 20:42:45 +0000
commit91326c34ee1f1531d62caa153746821b58e6e55d (patch)
tree0d5ca763efa6807b1f352d9ae9bc0537f9ed12f1 /src/gpu/GrPipeline.cpp
parent6a14edc8d8762a54a174c2df1bee5715fc0a0526 (diff)
Move GrProcessorSet into GrPipeline
Change-Id: Ibfa5e1adda3c32140590aa62a31d35654cef79dd Reviewed-on: https://skia-review.googlesource.com/28187 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'src/gpu/GrPipeline.cpp')
-rw-r--r--src/gpu/GrPipeline.cpp19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/gpu/GrPipeline.cpp b/src/gpu/GrPipeline.cpp
index 8e91d8133b..f6848962b8 100644
--- a/src/gpu/GrPipeline.cpp
+++ b/src/gpu/GrPipeline.cpp
@@ -17,10 +17,9 @@
#include "ops/GrOp.h"
-GrPipeline::GrPipeline(const InitArgs& args) {
+GrPipeline::GrPipeline(const InitArgs& args, GrProcessorSet&& processors) {
SkASSERT(args.fProxy);
- SkASSERT(args.fProcessors);
- SkASSERT(args.fProcessors->isFinalized());
+ SkASSERT(processors.isFinalized());
fProxy.reset(args.fProxy);
@@ -38,7 +37,7 @@ GrPipeline::GrPipeline(const InitArgs& args) {
fUserStencilSettings = args.fUserStencil;
- fXferProcessor = args.fProcessors->refXferProcessor();
+ fXferProcessor = processors.refXferProcessor();
if (args.fDstProxy.proxy()) {
if (!args.fDstProxy.proxy()->instantiate(args.fResourceProvider)) {
@@ -50,24 +49,24 @@ GrPipeline::GrPipeline(const InitArgs& args) {
}
// Copy GrFragmentProcessors from GrProcessorSet to Pipeline
- fNumColorProcessors = args.fProcessors->numColorFragmentProcessors();
+ fNumColorProcessors = processors.numColorFragmentProcessors();
int numTotalProcessors =
- fNumColorProcessors + args.fProcessors->numCoverageFragmentProcessors();
+ fNumColorProcessors + processors.numCoverageFragmentProcessors();
if (args.fAppliedClip && args.fAppliedClip->clipCoverageFragmentProcessor()) {
++numTotalProcessors;
}
fFragmentProcessors.reset(numTotalProcessors);
int currFPIdx = 0;
- for (int i = 0; i < args.fProcessors->numColorFragmentProcessors(); ++i, ++currFPIdx) {
- const GrFragmentProcessor* fp = args.fProcessors->colorFragmentProcessor(i);
+ for (int i = 0; i < processors.numColorFragmentProcessors(); ++i, ++currFPIdx) {
+ const GrFragmentProcessor* fp = processors.colorFragmentProcessor(i);
fFragmentProcessors[currFPIdx].reset(fp);
if (!fp->instantiate(args.fResourceProvider)) {
this->markAsBad();
}
}
- for (int i = 0; i < args.fProcessors->numCoverageFragmentProcessors(); ++i, ++currFPIdx) {
- const GrFragmentProcessor* fp = args.fProcessors->coverageFragmentProcessor(i);
+ for (int i = 0; i < processors.numCoverageFragmentProcessors(); ++i, ++currFPIdx) {
+ const GrFragmentProcessor* fp = processors.coverageFragmentProcessor(i);
fFragmentProcessors[currFPIdx].reset(fp);
if (!fp->instantiate(args.fResourceProvider)) {
this->markAsBad();