Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2011 Google Inc. | 3 * Copyright 2011 Google Inc. |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 | 9 |
| 10 #include "GrInOrderDrawBuffer.h" | 10 #include "GrInOrderDrawBuffer.h" |
| (...skipping 427 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 438 fStates.reset(); | 438 fStates.reset(); |
| 439 fClears.reset(); | 439 fClears.reset(); |
| 440 fVertexPool.reset(); | 440 fVertexPool.reset(); |
| 441 fIndexPool.reset(); | 441 fIndexPool.reset(); |
| 442 fClips.reset(); | 442 fClips.reset(); |
| 443 fClipOrigins.reset(); | 443 fClipOrigins.reset(); |
| 444 fCopySurfaces.reset(); | 444 fCopySurfaces.reset(); |
| 445 fClipSet = true; | 445 fClipSet = true; |
| 446 } | 446 } |
| 447 | 447 |
| 448 bool GrInOrderDrawBuffer::flush() { | 448 void GrInOrderDrawBuffer::flush() { |
| 449 if (fFlushing) { | |
| 450 return; | |
| 451 } | |
| 452 | |
| 449 GrAssert(kReserved_GeometrySrcType != this->getGeomSrc().fVertexSrc); | 453 GrAssert(kReserved_GeometrySrcType != this->getGeomSrc().fVertexSrc); |
| 450 GrAssert(kReserved_GeometrySrcType != this->getGeomSrc().fIndexSrc); | 454 GrAssert(kReserved_GeometrySrcType != this->getGeomSrc().fIndexSrc); |
| 451 | 455 |
| 452 int numCmds = fCmds.count(); | 456 int numCmds = fCmds.count(); |
| 453 if (0 == numCmds) { | 457 if (0 == numCmds) { |
| 454 return false; | 458 return; |
| 455 } | 459 } |
| 456 GrAssert(!fFlushing); | |
|
bsalomon
2013/07/03 18:34:21
Is this assertion no longer valid?
robertphillips
2013/07/03 18:37:45
It shouldn't ever fire since we are returning at t
| |
| 457 | 460 |
| 458 GrAutoTRestore<bool> flushRestore(&fFlushing); | 461 GrAutoTRestore<bool> flushRestore(&fFlushing); |
| 459 fFlushing = true; | 462 fFlushing = true; |
| 460 | 463 |
| 461 fVertexPool.unlock(); | 464 fVertexPool.unlock(); |
| 462 fIndexPool.unlock(); | 465 fIndexPool.unlock(); |
| 463 | 466 |
| 464 GrDrawTarget::AutoClipRestore acr(fDstGpu); | 467 GrDrawTarget::AutoClipRestore acr(fDstGpu); |
| 465 AutoGeometryAndStatePush agasp(fDstGpu, kPreserve_ASRInit); | 468 AutoGeometryAndStatePush agasp(fDstGpu, kPreserve_ASRInit); |
| 466 | 469 |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 526 GrAssert(fStates.count() == currState); | 529 GrAssert(fStates.count() == currState); |
| 527 GrAssert(fClips.count() == currClip); | 530 GrAssert(fClips.count() == currClip); |
| 528 GrAssert(fClipOrigins.count() == currClip); | 531 GrAssert(fClipOrigins.count() == currClip); |
| 529 GrAssert(fClears.count() == currClear); | 532 GrAssert(fClears.count() == currClear); |
| 530 GrAssert(fDraws.count() == currDraw); | 533 GrAssert(fDraws.count() == currDraw); |
| 531 GrAssert(fCopySurfaces.count() == currCopySurface); | 534 GrAssert(fCopySurfaces.count() == currCopySurface); |
| 532 | 535 |
| 533 fDstGpu->setDrawState(prevDrawState); | 536 fDstGpu->setDrawState(prevDrawState); |
| 534 prevDrawState->unref(); | 537 prevDrawState->unref(); |
| 535 this->reset(); | 538 this->reset(); |
| 536 return true; | |
| 537 } | 539 } |
| 538 | 540 |
| 539 bool GrInOrderDrawBuffer::onCopySurface(GrSurface* dst, | 541 bool GrInOrderDrawBuffer::onCopySurface(GrSurface* dst, |
| 540 GrSurface* src, | 542 GrSurface* src, |
| 541 const SkIRect& srcRect, | 543 const SkIRect& srcRect, |
| 542 const SkIPoint& dstPoint) { | 544 const SkIPoint& dstPoint) { |
| 543 if (fDstGpu->canCopySurface(dst, src, srcRect, dstPoint)) { | 545 if (fDstGpu->canCopySurface(dst, src, srcRect, dstPoint)) { |
| 544 CopySurface* cs = this->recordCopySurface(); | 546 CopySurface* cs = this->recordCopySurface(); |
| 545 cs->fDst.reset(SkRef(dst)); | 547 cs->fDst.reset(SkRef(dst)); |
| 546 cs->fSrc.reset(SkRef(src)); | 548 cs->fSrc.reset(SkRef(src)); |
| (...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 816 fCmds.push_back(kCopySurface_Cmd); | 818 fCmds.push_back(kCopySurface_Cmd); |
| 817 return &fCopySurfaces.push_back(); | 819 return &fCopySurfaces.push_back(); |
| 818 } | 820 } |
| 819 | 821 |
| 820 | 822 |
| 821 void GrInOrderDrawBuffer::clipWillBeSet(const GrClipData* newClipData) { | 823 void GrInOrderDrawBuffer::clipWillBeSet(const GrClipData* newClipData) { |
| 822 INHERITED::clipWillBeSet(newClipData); | 824 INHERITED::clipWillBeSet(newClipData); |
| 823 fClipSet = true; | 825 fClipSet = true; |
| 824 fClipProxyState = kUnknown_ClipProxyState; | 826 fClipProxyState = kUnknown_ClipProxyState; |
| 825 } | 827 } |
| OLD | NEW |