diff options
author | 2014-12-03 10:40:13 -0800 | |
---|---|---|
committer | 2014-12-03 10:40:13 -0800 | |
commit | 378092f3d10b1dd62967f419c35cfefec7c10ee7 (patch) | |
tree | 2053505fc4cccddb5a366ef26897128b2a65b0cd /src/gpu/GrOptDrawState.h | |
parent | 5ab7e80f2b477c55be9861ab1c56e33e19aa97a6 (diff) |
Add XferProcessor factory in GrPaint and GrDrawState.
In this CL the XP should have zero effect on the actual rendering pipeline.
BUG=skia:
Review URL: https://codereview.chromium.org/751283002
Diffstat (limited to 'src/gpu/GrOptDrawState.h')
-rw-r--r-- | src/gpu/GrOptDrawState.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gpu/GrOptDrawState.h b/src/gpu/GrOptDrawState.h index 542172fd64..ac7ec16402 100644 --- a/src/gpu/GrOptDrawState.h +++ b/src/gpu/GrOptDrawState.h @@ -84,6 +84,9 @@ public: bool hasGeometryProcessor() const { return SkToBool(fGeometryProcessor.get()); } const GrGeometryProcessor* getGeometryProcessor() const { return fGeometryProcessor.get(); } + + const GrXferProcessor* getXferProcessor() const { return fXferProcessor.get(); } + const GrPendingFragmentStage& getColorStage(int idx) const { SkASSERT(idx < this->numColorStages()); return fFragmentStages[idx]; @@ -230,6 +233,7 @@ private: typedef GrPendingIOResource<GrRenderTarget, kWrite_GrIOType> RenderTarget; typedef SkSTArray<8, GrPendingFragmentStage> FragmentStageArray; typedef GrPendingProgramElement<const GrGeometryProcessor> ProgramGeometryProcessor; + typedef GrPendingProgramElement<const GrXferProcessor> ProgramXferProcessor; RenderTarget fRenderTarget; ScissorState fScissorState; GrColor fColor; @@ -243,6 +247,7 @@ private: GrBlendCoeff fDstBlend; uint32_t fFlags; ProgramGeometryProcessor fGeometryProcessor; + ProgramXferProcessor fXferProcessor; FragmentStageArray fFragmentStages; // This function is equivalent to the offset into fFragmentStages where coverage stages begin. |