aboutsummaryrefslogtreecommitdiffhomepage
path: root/include
diff options
context:
space:
mode:
authorGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-12-13 21:16:12 +0000
committerGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-12-13 21:16:12 +0000
commitc0784dbd408596aff13a5d97448f7a9e5d3cf7d9 (patch)
treee2b6c89b38f35bddae3cf9fb63b48e4cd3a13625 /include
parenta3f882c4756bd8b9b6449dcc60b6d884ee0cc8ed (diff)
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
Diffstat (limited to 'include')
-rw-r--r--include/core/SkCanvas.h26
-rw-r--r--include/core/SkScalarCompare.h38
2 files changed, 12 insertions, 52 deletions
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