From c0784dbd408596aff13a5d97448f7a9e5d3cf7d9 Mon Sep 17 00:00:00 2001 From: "reed@google.com" Date: Fri, 13 Dec 2013 21:16:12 +0000 Subject: remove SkScalarCompare type and header BUG= R=fmalita@chromium.org Review URL: https://codereview.chromium.org/113193004 git-svn-id: http://skia.googlecode.com/svn/trunk@12681 2bbb7eff-a529-9590-31e7-b0007b416f81 --- include/core/SkCanvas.h | 26 ++++++++++++-------------- include/core/SkScalarCompare.h | 38 -------------------------------------- 2 files changed, 12 insertions(+), 52 deletions(-) delete mode 100644 include/core/SkScalarCompare.h (limited to 'include') diff --git a/include/core/SkCanvas.h b/include/core/SkCanvas.h index 6c41680e3e..5a5cc65f0b 100644 --- a/include/core/SkCanvas.h +++ b/include/core/SkCanvas.h @@ -18,7 +18,6 @@ #include "SkRefCnt.h" #include "SkPath.h" #include "SkRegion.h" -#include "SkScalarCompare.h" #include "SkXfermode.h" class SkBounder; @@ -455,14 +454,13 @@ public: not intersect the current clip) */ bool quickRejectY(SkScalar top, SkScalar bottom) const { - SkASSERT(SkScalarToCompareType(top) <= SkScalarToCompareType(bottom)); - const SkRectCompareType& clipR = this->getLocalClipBoundsCompareType(); + SkASSERT(top <= bottom); + const SkRect& clipR = this->getLocalClipBounds(); // In the case where the clip is empty and we are provided with a // negative top and positive bottom parameter then this test will return // false even though it will be clipped. We have chosen to exclude that // check as it is rare and would result double the comparisons. - return SkScalarToCompareType(top) >= clipR.fBottom - || SkScalarToCompareType(bottom) <= clipR.fTop; + return top >= clipR.fBottom || bottom <= clipR.fTop; } /** Return the bounds of the current clip (in local coordinates) in the @@ -1100,20 +1098,20 @@ private: /* These maintain a cache of the clip bounds in local coordinates, (converted to 2s-compliment if floats are slow). */ - mutable SkRectCompareType fLocalBoundsCompareType; - mutable bool fLocalBoundsCompareTypeDirty; + mutable SkRect fCachedLocalClipBounds; + mutable bool fCachedLocalClipBoundsDirty; bool fAllowSoftClip; bool fAllowSimplifyClip; - const SkRectCompareType& getLocalClipBoundsCompareType() const { - if (fLocalBoundsCompareTypeDirty) { - this->computeLocalClipBoundsCompareType(); - fLocalBoundsCompareTypeDirty = false; + const SkRect& getLocalClipBounds() const { + if (fCachedLocalClipBoundsDirty) { + if (!this->getClipBounds(&fCachedLocalClipBounds)) { + fCachedLocalClipBounds.setEmpty(); + } + fCachedLocalClipBoundsDirty = false; } - return fLocalBoundsCompareType; + return fCachedLocalClipBounds; } - void computeLocalClipBoundsCompareType() const; - class AutoValidateClip : ::SkNoncopyable { public: diff --git a/include/core/SkScalarCompare.h b/include/core/SkScalarCompare.h deleted file mode 100644 index 5361294f9a..0000000000 --- a/include/core/SkScalarCompare.h +++ /dev/null @@ -1,38 +0,0 @@ - -/* - * Copyright 2006 The Android Open Source Project - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - - -#ifndef SkScalarCompare_DEFINED -#define SkScalarCompare_DEFINED - -#include "SkFloatBits.h" -#include "SkRect.h" - -/** Skia can spend a lot of time just comparing scalars (e.g. quickReject). - When scalar==fixed, this is very fast, and when scalar==hardware-float, this - is also reasonable, but if scalar==software-float, then each compare can be - a function call and take real time. To account for that, we have the flag - SK_SCALAR_SLOW_COMPARES. - - If this is defined, we have a special trick where we quickly convert floats - to a 2's compliment form, and then treat them as signed 32bit integers. In - this form we lose a few subtlties (e.g. NaNs always comparing false) but - we gain the speed of integer compares. - */ - -#ifdef SK_SCALAR_SLOW_COMPARES - typedef int32_t SkScalarCompareType; - typedef SkIRect SkRectCompareType; - #define SkScalarToCompareType(x) SkScalarAs2sCompliment(x) -#else - typedef SkScalar SkScalarCompareType; - typedef SkRect SkRectCompareType; - #define SkScalarToCompareType(x) (x) -#endif - -#endif -- cgit v1.2.3