aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrPipelineBuilder.cpp
diff options
context:
space:
mode:
authorGravatar Brian Salomon <bsalomon@google.com>2017-01-18 11:01:10 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-01-18 16:48:41 +0000
commit92ce5946855aa8d55bb4a0dd0a47d58746d67d0a (patch)
treeed5040bbd28661901009337c4a6ee311175ab142 /src/gpu/GrPipelineBuilder.cpp
parent70a309aa055dad8b2e7a6cbd90774f44a7fcd5fb (diff)
Add class GrProcessorSet which represents color and coverage FPs and a XPFactory.
Eventually ops can use this to hold their ops and create GrPipelines at flush time. For now it is used by GrPipelineBuilder. Change-Id: I0db3892032f2d07238e4c847a790678b3aab456f Reviewed-on: https://skia-review.googlesource.com/7132 Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'src/gpu/GrPipelineBuilder.cpp')
-rw-r--r--src/gpu/GrPipelineBuilder.cpp14
1 files changed, 3 insertions, 11 deletions
diff --git a/src/gpu/GrPipelineBuilder.cpp b/src/gpu/GrPipelineBuilder.cpp
index fce8aa9694..ce3871873a 100644
--- a/src/gpu/GrPipelineBuilder.cpp
+++ b/src/gpu/GrPipelineBuilder.cpp
@@ -18,18 +18,10 @@
GrPipelineBuilder::GrPipelineBuilder(GrPaint&& paint, GrAAType aaType)
: fFlags(0x0)
, fUserStencilSettings(&GrUserStencilSettings::kUnused)
- , fDrawFace(GrDrawFace::kBoth) {
- for (int i = 0; i < paint.numColorFragmentProcessors(); ++i) {
- fColorFragmentProcessors.emplace_back(paint.fColorFragmentProcessors[i].release());
- }
-
- for (int i = 0; i < paint.numCoverageFragmentProcessors(); ++i) {
- fCoverageFragmentProcessors.emplace_back(paint.fCoverageFragmentProcessors[i].release());
- }
-
- fXPFactory = paint.getXPFactory();
-
+ , fDrawFace(GrDrawFace::kBoth)
+ , fProcessors(std::move(paint)) {
this->setState(GrPipelineBuilder::kHWAntialias_Flag, GrAATypeIsHW(aaType));
+ // The processors have been moved out of paint, but its flags should still be unmodified.
this->setState(GrPipelineBuilder::kDisableOutputConversionToSRGB_Flag,
paint.getDisableOutputConversionToSRGB());
this->setState(GrPipelineBuilder::kAllowSRGBInputs_Flag,