diff options
author | bsalomon <bsalomon@google.com> | 2015-02-05 14:18:05 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-02-05 14:18:05 -0800 |
commit | 21b2c53218ab25f4268e3992e51d916076a2a7ee (patch) | |
tree | e7ab5654af36277c137b2b13caf4dc011af760a9 /src/gpu/GrProgramDesc.h | |
parent | f71b4c185768ecbfe60da66025c474035ddae822 (diff) |
Revert of Move DstCopy on gpu into the GrXferProcessor. (patchset #11 id:200001 of https://codereview.chromium.org/885923002/)
Reason for revert:
Testing to see if reverting fixes 10.9 bots.
Original issue's description:
> Move DstCopy on gpu into the GrXferProcessor.
>
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/74a11753604768bf461b80cabb66060e8564d82c
>
> Committed: https://skia.googlesource.com/skia/+/5e1378d0e075a323144ba14e0a4cbcca35eccc69
TBR=joshualitt@google.com,egdaniel@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/901663007
Diffstat (limited to 'src/gpu/GrProgramDesc.h')
-rw-r--r-- | src/gpu/GrProgramDesc.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/gpu/GrProgramDesc.h b/src/gpu/GrProgramDesc.h index 66e0e06b8c..e07e116733 100644 --- a/src/gpu/GrProgramDesc.h +++ b/src/gpu/GrProgramDesc.h @@ -55,6 +55,9 @@ public: } struct KeyHeader { + uint8_t fDstReadKey; // set by GrGLShaderBuilder if there + // are effects that must read the dst. + // Otherwise, 0. uint8_t fFragPosKey; // set by GrGLShaderBuilder if there are // effects that read the fragment position. // Otherwise, 0. @@ -76,6 +79,20 @@ public: // This should really only be used internally, base classes should return their own headers const KeyHeader& header() const { return *this->atOffset<KeyHeader, kHeaderOffset>(); } + // A struct to communicate descriptor information to the program descriptor builder + struct DescInfo { + bool operator==(const DescInfo& that) const { + return fReadsDst == that.fReadsDst && + fReadsFragPosition == that.fReadsFragPosition; + } + bool operator!=(const DescInfo& that) const { return !(*this == that); }; + + // These flags give aggregated info on the processor stages that are used when building + // programs. + bool fReadsDst; + bool fReadsFragPosition; + }; + private: template<typename T, size_t OFFSET> T* atOffset() { return reinterpret_cast<T*>(reinterpret_cast<intptr_t>(fKey.begin()) + OFFSET); |