| Index: include/gpu/GrClip.h
|
| diff --git a/include/gpu/GrClip.h b/include/gpu/GrClip.h
|
| index e8f42a231765e3969d5db48f12049cb47822b8b0..76cb46e3123c9bf2d74959783a700e2871b61de7 100644
|
| --- a/include/gpu/GrClip.h
|
| +++ b/include/gpu/GrClip.h
|
| @@ -15,7 +15,7 @@
|
|
|
| /**
|
| * GrClip encapsulates the information required to construct the clip
|
| - * masks. 'A GrClip is either wide open, just an IRect, just a Rect, or a full clipstack.
|
| + * masks. 'A GrClip is either wide open, just an IRect, just a Rect(TODO), or a full clipstack.
|
| * If the clip is a clipstack than the origin is used to translate the stack with
|
| * respect to device coordinates. This allows us to use a clip stack that is
|
| * specified for a root device with a layer device that is restricted to a subset
|
| @@ -28,23 +28,18 @@
|
| GrClip() : fClipType(kWideOpen_ClipType) {
|
| fOrigin.setZero();
|
| }
|
| -
|
| GrClip(const SkIRect& rect) : fClipType(kIRect_ClipType) {
|
| fOrigin.setZero();
|
| fClip.fIRect = rect;
|
| }
|
| -
|
| - GrClip(const SkRect& rect) : fClipType(kRect_ClipType) {
|
| - fOrigin.setZero();
|
| - fClip.fRect = rect;
|
| - }
|
| -
|
| ~GrClip() { this->reset(); }
|
|
|
| const GrClip& operator=(const GrClip& other) {
|
| this->reset();
|
| fClipType = other.fClipType;
|
| switch (other.fClipType) {
|
| + default:
|
| + SkFAIL("Incomplete Switch\n");
|
| case kWideOpen_ClipType:
|
| fOrigin.setZero();
|
| break;
|
| @@ -54,10 +49,6 @@
|
| break;
|
| case kIRect_ClipType:
|
| fClip.fIRect = other.irect();
|
| - fOrigin.setZero();
|
| - break;
|
| - case kRect_ClipType:
|
| - fClip.fRect = other.rect();
|
| fOrigin.setZero();
|
| break;
|
| }
|
| @@ -70,6 +61,9 @@
|
| }
|
|
|
| switch (fClipType) {
|
| + default:
|
| + SkFAIL("Incomplete Switch\n");
|
| + return false;
|
| case kWideOpen_ClipType:
|
| return true;
|
| case kClipStack_ClipType:
|
| @@ -85,9 +79,6 @@
|
| break;
|
| case kIRect_ClipType:
|
| return this->irect() == other.irect();
|
| - break;
|
| - case kRect_ClipType:
|
| - return this->rect() == other.rect();
|
| break;
|
| }
|
| }
|
| @@ -122,11 +113,6 @@
|
| return fClip.fIRect;
|
| }
|
|
|
| - const SkRect& rect() const {
|
| - SkASSERT(kRect_ClipType == fClipType);
|
| - return fClip.fRect;
|
| - }
|
| -
|
| void reset() {
|
| if (kClipStack_ClipType == fClipType) {
|
| fClip.fStack->unref();
|
| @@ -146,27 +132,18 @@
|
| bool isWideOpen(const SkRect& rect) const {
|
| return (kWideOpen_ClipType == fClipType) ||
|
| (kClipStack_ClipType == fClipType && this->clipStack()->isWideOpen()) ||
|
| - (kIRect_ClipType == fClipType && this->irect().contains(rect)) ||
|
| - (kRect_ClipType == fClipType && this->rect().contains(rect));
|
| + (kIRect_ClipType == fClipType && this->irect().contains(rect));
|
| }
|
|
|
| bool isWideOpen(const SkIRect& rect) const {
|
| return (kWideOpen_ClipType == fClipType) ||
|
| (kClipStack_ClipType == fClipType && this->clipStack()->isWideOpen()) ||
|
| - (kIRect_ClipType == fClipType && this->irect().contains(rect)) ||
|
| - (kRect_ClipType == fClipType && this->rect().contains(rect));
|
| + (kIRect_ClipType == fClipType && this->irect().contains(rect));
|
| }
|
|
|
| bool isWideOpen() const {
|
| return (kWideOpen_ClipType == fClipType) ||
|
| (kClipStack_ClipType == fClipType && this->clipStack()->isWideOpen());
|
| - }
|
| -
|
| - bool quickContains(const SkRect& rect) const {
|
| - return (kWideOpen_ClipType == fClipType) ||
|
| - (kClipStack_ClipType == fClipType && this->clipStack()->quickContains(rect)) ||
|
| - (kIRect_ClipType == fClipType && this->irect().contains(rect)) ||
|
| - (kRect_ClipType == fClipType && this->rect().contains(rect));
|
| }
|
|
|
| void getConservativeBounds(const GrSurface* surface,
|
| @@ -186,7 +163,6 @@
|
| kClipStack_ClipType,
|
| kWideOpen_ClipType,
|
| kIRect_ClipType,
|
| - kRect_ClipType,
|
| };
|
|
|
| ClipType clipType() const { return fClipType; }
|
| @@ -194,7 +170,6 @@
|
| private:
|
| union Clip {
|
| const SkClipStack* fStack;
|
| - SkRect fRect;
|
| SkIRect fIRect;
|
| } fClip;
|
|
|
|
|