| Index: src/gpu/GrPipeline.h
|
| diff --git a/src/gpu/GrPipeline.h b/src/gpu/GrPipeline.h
|
| index db1415524d91c1068332d8d22500e21e5282f48f..ea2ea855dc651d9b33fe832190c4c6fc331d2414 100644
|
| --- a/src/gpu/GrPipeline.h
|
| +++ b/src/gpu/GrPipeline.h
|
| @@ -9,10 +9,9 @@
|
| #define GrPipeline_DEFINED
|
|
|
| #include "GrColor.h"
|
| -#include "GrFragmentProcessor.h"
|
| #include "GrGpu.h"
|
| #include "GrNonAtomicRef.h"
|
| -#include "GrPendingProgramElement.h"
|
| +#include "GrPendingFragmentStage.h"
|
| #include "GrPrimitiveProcessor.h"
|
| #include "GrProgramDesc.h"
|
| #include "GrStencil.h"
|
| @@ -85,26 +84,22 @@
|
| /// @name GrFragmentProcessors
|
|
|
|
|
| - int numColorFragmentProcessors() const { return fNumColorProcessors; }
|
| - int numCoverageFragmentProcessors() const {
|
| - return fFragmentProcessors.count() - fNumColorProcessors;
|
| - }
|
| - int numFragmentProcessors() const { return fFragmentProcessors.count(); }
|
| + int numColorFragmentStages() const { return fNumColorStages; }
|
| + int numCoverageFragmentStages() const { return fFragmentStages.count() - fNumColorStages; }
|
| + int numFragmentStages() const { return fFragmentStages.count(); }
|
|
|
| const GrXferProcessor* getXferProcessor() const { return fXferProcessor.get(); }
|
|
|
| - const GrFragmentProcessor& getColorFragmentProcessor(int idx) const {
|
| - SkASSERT(idx < this->numColorFragmentProcessors());
|
| - return *fFragmentProcessors[idx].get();
|
| + const GrPendingFragmentStage& getColorStage(int idx) const {
|
| + SkASSERT(idx < this->numColorFragmentStages());
|
| + return fFragmentStages[idx];
|
| }
|
| -
|
| - const GrFragmentProcessor& getCoverageFragmentProcessor(int idx) const {
|
| - SkASSERT(idx < this->numCoverageFragmentProcessors());
|
| - return *fFragmentProcessors[fNumColorProcessors + idx].get();
|
| + const GrPendingFragmentStage& getCoverageStage(int idx) const {
|
| + SkASSERT(idx < this->numCoverageFragmentStages());
|
| + return fFragmentStages[fNumColorStages + idx];
|
| }
|
| -
|
| - const GrFragmentProcessor& getFragmentProcessor(int idx) const {
|
| - return *fFragmentProcessors[idx].get();
|
| + const GrPendingFragmentStage& getFragmentStage(int idx) const {
|
| + return fFragmentStages[idx];
|
| }
|
|
|
| /// @}
|
| @@ -154,8 +149,8 @@
|
| GrXferProcessor::OptFlags,
|
| const GrProcOptInfo& colorPOI,
|
| const GrProcOptInfo& coveragePOI,
|
| - int* firstColorProcessorIdx,
|
| - int* firstCoverageProcessorIdx);
|
| + int* firstColorStageIdx,
|
| + int* firstCoverageStageIdx);
|
|
|
| /**
|
| * Calculates the primary and secondary output types of the shader. For certain output types
|
| @@ -172,8 +167,7 @@
|
| };
|
|
|
| typedef GrPendingIOResource<GrRenderTarget, kWrite_GrIOType> RenderTarget;
|
| - typedef GrPendingProgramElement<const GrFragmentProcessor> PendingFragmentProcessor;
|
| - typedef SkAutoSTArray<8, PendingFragmentProcessor> FragmentProcessorArray;
|
| + typedef SkSTArray<8, GrPendingFragmentStage> FragmentStageArray;
|
| typedef GrPendingProgramElement<const GrXferProcessor> ProgramXferProcessor;
|
| RenderTarget fRenderTarget;
|
| GrScissorState fScissorState;
|
| @@ -181,11 +175,11 @@
|
| GrPipelineBuilder::DrawFace fDrawFace;
|
| uint32_t fFlags;
|
| ProgramXferProcessor fXferProcessor;
|
| - FragmentProcessorArray fFragmentProcessors;
|
| + FragmentStageArray fFragmentStages;
|
| bool fReadsFragPosition;
|
|
|
| - // This value is also the index in fFragmentProcessors where coverage processors begin.
|
| - int fNumColorProcessors;
|
| + // This function is equivalent to the offset into fFragmentStages where coverage stages begin.
|
| + int fNumColorStages;
|
|
|
| SkSTArray<8, const GrCoordTransform*, true> fCoordTransforms;
|
| GrProgramDesc fDesc;
|
|
|