Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(880)

Unified Diff: src/gpu/GrDrawTarget.cpp

Issue 947443003: Move clip off of draw target (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: feedback inc Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/gpu/GrDrawTarget.h ('k') | src/gpu/GrPipelineBuilder.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/gpu/GrDrawTarget.cpp
diff --git a/src/gpu/GrDrawTarget.cpp b/src/gpu/GrDrawTarget.cpp
index ee111a65351bcbbece4cc532fe800ba39dfc1645..7d39c2011bf92282d3d12fb3bbdb0fbe8eb3b653 100644
--- a/src/gpu/GrDrawTarget.cpp
+++ b/src/gpu/GrDrawTarget.cpp
@@ -92,8 +92,7 @@ void GrDrawTarget::DrawInfo::adjustStartIndex(int indexOffset) {
#define DEBUG_INVAL_START_IDX -1
GrDrawTarget::GrDrawTarget(GrContext* context)
- : fClip(NULL)
- , fContext(context)
+ : fContext(context)
, fGpuTraceMarkerCount(0) {
SkASSERT(context);
GeometrySrcState& geoSrc = fGeoSrcStateStack.push_back();
@@ -124,14 +123,6 @@ void GrDrawTarget::releaseGeometry() {
this->resetIndexSource();
}
-void GrDrawTarget::setClip(const GrClipData* clip) {
- fClip = clip;
-}
-
-const GrClipData* GrDrawTarget::getClip() const {
- return fClip;
-}
-
bool GrDrawTarget::reserveVertexSpace(size_t vertexSize,
int vertexCount,
void** vertices) {
@@ -395,9 +386,8 @@ bool GrDrawTarget::setupDstReadIfNecessary(const GrPipelineBuilder& pipelineBuil
return true;
}
SkIRect copyRect;
- const GrClipData* clip = this->getClip();
GrRenderTarget* rt = pipelineBuilder.getRenderTarget();
- clip->getConservativeBounds(rt, &copyRect);
+ pipelineBuilder.clip().getConservativeBounds(rt, &copyRect);
if (drawBounds) {
SkIRect drawIBounds;
@@ -879,15 +869,6 @@ void GrDrawTarget::AutoReleaseGeometry::reset() {
fIndices = NULL;
}
-GrDrawTarget::AutoClipRestore::AutoClipRestore(GrDrawTarget* target, const SkIRect& newClip) {
- fTarget = target;
- fClip = fTarget->getClip();
- fStack.init();
- fStack.get()->clipDevRect(newClip, SkRegion::kReplace_Op);
- fReplacementClip.fClipStack.reset(SkRef(fStack.get()));
- target->setClip(&fReplacementClip);
-}
-
namespace {
// returns true if the read/written rect intersects the src/dst and false if not.
bool clip_srcrect_and_dstpoint(const GrSurface* dst,
@@ -1295,6 +1276,5 @@ bool GrClipTarget::setupClip(GrPipelineBuilder* pipelineBuilder,
are,
ars,
scissorState,
- this->getClip(),
devBounds);
}
« no previous file with comments | « src/gpu/GrDrawTarget.h ('k') | src/gpu/GrPipelineBuilder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698