aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar benjaminwagner <benjaminwagner@google.com>2016-04-07 08:49:31 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-04-07 08:49:31 -0700
commit6c71e0a065c2eb32139682bb1ca1cbbeb02ebcb9 (patch)
tree8ca1b92cf353a1393429b034e95da6ebc3b5eb55
parent6f01104b1d86b861b366b3511c8f2567eca4a9f3 (diff)
Reverse dependency between SkScalar.h and SkFixed.h.
The following are unused in Chromium, Android, Mozilla, and Google3: - SkFixedToScalar - SkScalarToFixed The following are additionally unused in Skia: - SkStrAppendFixed - SkWriteBuffer::writeFixed BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1841123002 Review URL: https://codereview.chromium.org/1841123002
-rw-r--r--bench/InterpBench.cpp1
-rw-r--r--bench/MathBench.cpp1
-rw-r--r--include/core/SkScalar.h7
-rw-r--r--include/core/SkString.h1
-rw-r--r--include/core/SkWriteBuffer.h1
-rw-r--r--include/private/SkFixed.h15
-rw-r--r--include/utils/SkRandom.h1
-rw-r--r--samplecode/SamplePath.cpp11
-rw-r--r--src/core/SkFDot6.h1
-rw-r--r--src/core/SkFontDescriptor.h1
-rw-r--r--src/core/SkLinearBitmapPipeline_sample.h1
-rw-r--r--src/core/SkMath.cpp1
-rw-r--r--src/core/SkPerspIter.h1
-rw-r--r--src/core/SkReadBuffer.cpp4
-rw-r--r--src/core/SkReadBuffer.h1
-rw-r--r--src/core/SkScan.h1
-rw-r--r--src/core/SkString.cpp39
-rw-r--r--src/core/SkValidatingReadBuffer.cpp4
-rw-r--r--src/core/SkValidatingReadBuffer.h1
-rw-r--r--src/core/SkWriteBuffer.cpp4
-rw-r--r--src/effects/GrCircleBlurFragmentProcessor.cpp2
-rw-r--r--src/effects/SkDiscretePathEffect.cpp5
-rw-r--r--src/effects/SkEmbossMask.cpp1
-rw-r--r--src/effects/SkTableMaskFilter.cpp5
-rw-r--r--src/fonts/SkTestScalerContext.h1
-rw-r--r--src/gpu/GrGlyph.h1
-rw-r--r--src/ports/SkFontMgr_android_parser.cpp1
-rw-r--r--src/utils/SkInterpolator.cpp1
-rw-r--r--tests/FontMgrAndroidParserTest.cpp1
-rw-r--r--tests/MathTest.cpp1
30 files changed, 39 insertions, 77 deletions
diff --git a/bench/InterpBench.cpp b/bench/InterpBench.cpp
index b95f57d50d..f259b83cc5 100644
--- a/bench/InterpBench.cpp
+++ b/bench/InterpBench.cpp
@@ -7,6 +7,7 @@
#include "Benchmark.h"
#include "SkColorPriv.h"
+#include "SkFixed.h"
#include "SkMatrix.h"
#include "SkPaint.h"
#include "SkRandom.h"
diff --git a/bench/MathBench.cpp b/bench/MathBench.cpp
index fb35a8aafe..77ba2f04be 100644
--- a/bench/MathBench.cpp
+++ b/bench/MathBench.cpp
@@ -7,6 +7,7 @@
#include "Benchmark.h"
#include "SkColorPriv.h"
+#include "SkFixed.h"
#include "SkMatrix.h"
#include "SkPaint.h"
#include "SkRandom.h"
diff --git a/include/core/SkScalar.h b/include/core/SkScalar.h
index 47c74bc5a9..b2d966cb3b 100644
--- a/include/core/SkScalar.h
+++ b/include/core/SkScalar.h
@@ -8,7 +8,6 @@
#ifndef SkScalar_DEFINED
#define SkScalar_DEFINED
-#include "../private/SkFixed.h"
#include "../private/SkFloatingPoint.h"
// TODO: move this sort of check into SkPostConfig.h
@@ -32,9 +31,6 @@ typedef float SkScalar;
#define SK_ScalarNegativeInfinity SK_FloatNegativeInfinity
#define SK_ScalarNaN SK_FloatNaN
-#define SkFixedToScalar(x) SkFixedToFloat(x)
-#define SkScalarToFixed(x) SkFloatToFixed(x)
-
#define SkScalarFloorToScalar(x) sk_float_floor(x)
#define SkScalarCeilToScalar(x) sk_float_ceil(x)
#define SkScalarRoundToScalar(x) sk_float_floor((x) + 0.5f)
@@ -75,9 +71,6 @@ typedef double SkScalar;
#define SK_ScalarNegativeInfinity SK_DoubleNegativeInfinity
#define SK_ScalarNaN SK_DoubleNaN
-#define SkFixedToScalar(x) SkFixedToDouble(x)
-#define SkScalarToFixed(x) SkDoubleToFixed(x)
-
#define SkScalarFloorToScalar(x) floor(x)
#define SkScalarCeilToScalar(x) ceil(x)
#define SkScalarRoundToScalar(x) floor((x) + 0.5)
diff --git a/include/core/SkString.h b/include/core/SkString.h
index 1c3ee3a20c..4a2d91f2df 100644
--- a/include/core/SkString.h
+++ b/include/core/SkString.h
@@ -111,7 +111,6 @@ char* SkStrAppendS64(char buffer[], int64_t, int minDigits);
#define SkStrAppendScalar SkStrAppendFloat
char* SkStrAppendFloat(char buffer[], float);
-char* SkStrAppendFixed(char buffer[], SkFixed);
/** \class SkString
diff --git a/include/core/SkWriteBuffer.h b/include/core/SkWriteBuffer.h
index 6e9d043aeb..3ae82d014a 100644
--- a/include/core/SkWriteBuffer.h
+++ b/include/core/SkWriteBuffer.h
@@ -51,7 +51,6 @@ public:
void writeByteArray(const void* data, size_t size);
void writeDataAsByteArray(SkData* data) { this->writeByteArray(data->data(), data->size()); }
void writeBool(bool value);
- void writeFixed(SkFixed value);
void writeScalar(SkScalar value);
void writeScalarArray(const SkScalar* value, uint32_t count);
void writeInt(int32_t value);
diff --git a/include/private/SkFixed.h b/include/private/SkFixed.h
index b504f2f94c..56821d4d82 100644
--- a/include/private/SkFixed.h
+++ b/include/private/SkFixed.h
@@ -8,6 +8,7 @@
#ifndef SkFixed_DEFINED
#define SkFixed_DEFINED
+#include "SkScalar.h"
#include "SkTypes.h"
/** \file SkFixed.h
@@ -142,6 +143,20 @@ inline SkFixed SkFixedMul_longlong(SkFixed a, SkFixed b) {
///////////////////////////////////////////////////////////////////////////////
+#if SK_SCALAR_IS_FLOAT
+
+#define SkFixedToScalar(x) SkFixedToFloat(x)
+#define SkScalarToFixed(x) SkFloatToFixed(x)
+
+#else // SK_SCALAR_IS_DOUBLE
+
+#define SkFixedToScalar(x) SkFixedToDouble(x)
+#define SkScalarToFixed(x) SkDoubleToFixed(x)
+
+#endif
+
+///////////////////////////////////////////////////////////////////////////////
+
typedef int64_t SkFixed3232; // 32.32
#define SkIntToFixed3232(x) (SkLeftShift((SkFixed3232)(x), 32))
diff --git a/include/utils/SkRandom.h b/include/utils/SkRandom.h
index ecaedafc2f..7b5663118c 100644
--- a/include/utils/SkRandom.h
+++ b/include/utils/SkRandom.h
@@ -8,6 +8,7 @@
#ifndef SkRandom_DEFINED
#define SkRandom_DEFINED
+#include "../private/SkFixed.h"
#include "SkScalar.h"
/** \class SkRandom
diff --git a/samplecode/SamplePath.cpp b/samplecode/SamplePath.cpp
index 12cc40245f..8baa359fa3 100644
--- a/samplecode/SamplePath.cpp
+++ b/samplecode/SamplePath.cpp
@@ -53,17 +53,6 @@ static void test_cubic2() {
SkParsePath::FromSVGString(str, &path);
{
-#ifdef SK_BUILD_FOR_WIN
- // windows doesn't have strtof
- float x = (float)strtod("9.94099e+07", nullptr);
-#else
- float x = strtof("9.94099e+07", nullptr);
-#endif
- int ix = (int)x;
- int fx = (int)(x * 65536);
- int ffx = SkScalarToFixed(x);
- SkDebugf("%g %x %x %x\n", x, ix, fx, ffx);
-
SkRect r = path.getBounds();
SkIRect ir;
r.round(&ir);
diff --git a/src/core/SkFDot6.h b/src/core/SkFDot6.h
index 82138acf11..726aa2e46d 100644
--- a/src/core/SkFDot6.h
+++ b/src/core/SkFDot6.h
@@ -9,6 +9,7 @@
#ifndef SkFDot6_DEFINED
#define SkFDot6_DEFINED
+#include "SkFixed.h"
#include "SkScalar.h"
#include "SkMath.h"
diff --git a/src/core/SkFontDescriptor.h b/src/core/SkFontDescriptor.h
index cfdc571570..9b87365ed5 100644
--- a/src/core/SkFontDescriptor.h
+++ b/src/core/SkFontDescriptor.h
@@ -8,6 +8,7 @@
#ifndef SkFontDescriptor_DEFINED
#define SkFontDescriptor_DEFINED
+#include "SkFixed.h"
#include "SkStream.h"
#include "SkString.h"
#include "SkTypeface.h"
diff --git a/src/core/SkLinearBitmapPipeline_sample.h b/src/core/SkLinearBitmapPipeline_sample.h
index d63509db3a..93932247cd 100644
--- a/src/core/SkLinearBitmapPipeline_sample.h
+++ b/src/core/SkLinearBitmapPipeline_sample.h
@@ -8,6 +8,7 @@
#ifndef SkLinearBitmapPipeline_sampler_DEFINED
#define SkLinearBitmapPipeline_sampler_DEFINED
+#include "SkFixed.h"
#include "SkLinearBitmapPipeline_core.h"
#include <array>
#include <tuple>
diff --git a/src/core/SkMath.cpp b/src/core/SkMath.cpp
index af93d7ecb2..8a9737baa0 100644
--- a/src/core/SkMath.cpp
+++ b/src/core/SkMath.cpp
@@ -6,6 +6,7 @@
*/
#include "SkMathPriv.h"
+#include "SkFixed.h"
#include "SkFloatBits.h"
#include "SkFloatingPoint.h"
#include "SkScalar.h"
diff --git a/src/core/SkPerspIter.h b/src/core/SkPerspIter.h
index 3a00971dbc..c0a9083bee 100644
--- a/src/core/SkPerspIter.h
+++ b/src/core/SkPerspIter.h
@@ -9,6 +9,7 @@
#ifndef SkPerspIter_DEFINED
#define SkPerspIter_DEFINED
+#include "SkFixed.h"
#include "SkMatrix.h"
class SkPerspIter {
diff --git a/src/core/SkReadBuffer.cpp b/src/core/SkReadBuffer.cpp
index f220b5a9e6..abd46312f7 100644
--- a/src/core/SkReadBuffer.cpp
+++ b/src/core/SkReadBuffer.cpp
@@ -90,10 +90,6 @@ SkColor SkReadBuffer::readColor() {
return fReader.readInt();
}
-SkFixed SkReadBuffer::readFixed() {
- return fReader.readS32();
-}
-
int32_t SkReadBuffer::readInt() {
return fReader.readInt();
}
diff --git a/src/core/SkReadBuffer.h b/src/core/SkReadBuffer.h
index 7b12194fc0..e77d1adfe3 100644
--- a/src/core/SkReadBuffer.h
+++ b/src/core/SkReadBuffer.h
@@ -105,7 +105,6 @@ public:
// primitives
virtual bool readBool();
virtual SkColor readColor();
- virtual SkFixed readFixed();
virtual int32_t readInt();
virtual SkScalar readScalar();
virtual uint32_t readUInt();
diff --git a/src/core/SkScan.h b/src/core/SkScan.h
index f9443207c0..4aa8e44399 100644
--- a/src/core/SkScan.h
+++ b/src/core/SkScan.h
@@ -9,6 +9,7 @@
#ifndef SkScan_DEFINED
#define SkScan_DEFINED
+#include "SkFixed.h"
#include "SkRect.h"
class SkRasterClip;
diff --git a/src/core/SkString.cpp b/src/core/SkString.cpp
index 2e2c0e7173..24b1b8fb62 100644
--- a/src/core/SkString.cpp
+++ b/src/core/SkString.cpp
@@ -7,7 +7,6 @@
#include "SkAtomics.h"
-#include "SkFixed.h"
#include "SkString.h"
#include "SkUtils.h"
#include <stdarg.h>
@@ -143,44 +142,6 @@ char* SkStrAppendFloat(char string[], float value) {
return string + len;
}
-char* SkStrAppendFixed(char string[], SkFixed x) {
- SkDEBUGCODE(char* start = string;)
- if (x < 0) {
- *string++ = '-';
- x = -x;
- }
-
- unsigned frac = x & 0xFFFF;
- x >>= 16;
- if (frac == 0xFFFF) {
- // need to do this to "round up", since 65535/65536 is closer to 1 than to .9999
- x += 1;
- frac = 0;
- }
- string = SkStrAppendS32(string, x);
-
- // now handle the fractional part (if any)
- if (frac) {
- static const uint16_t gTens[] = { 1000, 100, 10, 1 };
- const uint16_t* tens = gTens;
-
- x = SkFixedRoundToInt(frac * 10000);
- SkASSERT(x <= 10000);
- if (x == 10000) {
- x -= 1;
- }
- *string++ = '.';
- do {
- unsigned powerOfTen = *tens++;
- *string++ = SkToU8('0' + x / powerOfTen);
- x %= powerOfTen;
- } while (x != 0);
- }
-
- SkASSERT(string - start <= SkStrAppendScalar_MaxSize);
- return string;
-}
-
///////////////////////////////////////////////////////////////////////////////
// the 3 values are [length] [refcnt] [terminating zero data]
diff --git a/src/core/SkValidatingReadBuffer.cpp b/src/core/SkValidatingReadBuffer.cpp
index ad4b6c409e..52006f23ad 100644
--- a/src/core/SkValidatingReadBuffer.cpp
+++ b/src/core/SkValidatingReadBuffer.cpp
@@ -66,10 +66,6 @@ SkColor SkValidatingReadBuffer::readColor() {
return this->readInt();
}
-SkFixed SkValidatingReadBuffer::readFixed() {
- return this->readInt();
-}
-
int32_t SkValidatingReadBuffer::readInt() {
const size_t inc = sizeof(int32_t);
this->validate(IsPtrAlign4(fReader.peek()) && fReader.isAvailable(inc));
diff --git a/src/core/SkValidatingReadBuffer.h b/src/core/SkValidatingReadBuffer.h
index bcdcba5de4..7fb203b45e 100644
--- a/src/core/SkValidatingReadBuffer.h
+++ b/src/core/SkValidatingReadBuffer.h
@@ -28,7 +28,6 @@ public:
// primitives
bool readBool() override;
SkColor readColor() override;
- SkFixed readFixed() override;
int32_t readInt() override;
SkScalar readScalar() override;
uint32_t readUInt() override;
diff --git a/src/core/SkWriteBuffer.cpp b/src/core/SkWriteBuffer.cpp
index 6baea37946..c33a7aec52 100644
--- a/src/core/SkWriteBuffer.cpp
+++ b/src/core/SkWriteBuffer.cpp
@@ -47,10 +47,6 @@ void SkWriteBuffer::writeBool(bool value) {
fWriter.writeBool(value);
}
-void SkWriteBuffer::writeFixed(SkFixed value) {
- fWriter.write32(value);
-}
-
void SkWriteBuffer::writeScalar(SkScalar value) {
fWriter.writeScalar(value);
}
diff --git a/src/effects/GrCircleBlurFragmentProcessor.cpp b/src/effects/GrCircleBlurFragmentProcessor.cpp
index afab4b4891..291dafc81a 100644
--- a/src/effects/GrCircleBlurFragmentProcessor.cpp
+++ b/src/effects/GrCircleBlurFragmentProcessor.cpp
@@ -18,6 +18,8 @@
#include "glsl/GrGLSLProgramDataManager.h"
#include "glsl/GrGLSLUniformHandler.h"
+#include "SkFixed.h"
+
class GrGLCircleBlurFragmentProcessor : public GrGLSLFragmentProcessor {
public:
void emitCode(EmitArgs&) override;
diff --git a/src/effects/SkDiscretePathEffect.cpp b/src/effects/SkDiscretePathEffect.cpp
index 5d5fc6528c..4525c1e32a 100644
--- a/src/effects/SkDiscretePathEffect.cpp
+++ b/src/effects/SkDiscretePathEffect.cpp
@@ -7,10 +7,11 @@
#include "SkDiscretePathEffect.h"
-#include "SkReadBuffer.h"
-#include "SkWriteBuffer.h"
+#include "SkFixed.h"
#include "SkPathMeasure.h"
+#include "SkReadBuffer.h"
#include "SkStrokeRec.h"
+#include "SkWriteBuffer.h"
sk_sp<SkPathEffect> SkDiscretePathEffect::Make(SkScalar segLength, SkScalar deviation,
uint32_t seedAssist) {
diff --git a/src/effects/SkEmbossMask.cpp b/src/effects/SkEmbossMask.cpp
index 310addf57d..7079d65aab 100644
--- a/src/effects/SkEmbossMask.cpp
+++ b/src/effects/SkEmbossMask.cpp
@@ -7,6 +7,7 @@
#include "SkEmbossMask.h"
+#include "SkFixed.h"
#include "SkMath.h"
static inline int nonzero_to_one(int x) {
diff --git a/src/effects/SkTableMaskFilter.cpp b/src/effects/SkTableMaskFilter.cpp
index d834652962..a3b4038a2f 100644
--- a/src/effects/SkTableMaskFilter.cpp
+++ b/src/effects/SkTableMaskFilter.cpp
@@ -6,10 +6,11 @@
*/
-#include "SkTableMaskFilter.h"
+#include "SkFixed.h"
#include "SkReadBuffer.h"
-#include "SkWriteBuffer.h"
#include "SkString.h"
+#include "SkTableMaskFilter.h"
+#include "SkWriteBuffer.h"
SkTableMaskFilter::SkTableMaskFilter() {
for (int i = 0; i < 256; i++) {
diff --git a/src/fonts/SkTestScalerContext.h b/src/fonts/SkTestScalerContext.h
index fe5c8d6ffc..4af9bf3dfd 100644
--- a/src/fonts/SkTestScalerContext.h
+++ b/src/fonts/SkTestScalerContext.h
@@ -8,6 +8,7 @@
#ifndef SkTestScalerContext_DEFINED
#define SkTestScalerContext_DEFINED
+#include "SkFixed.h"
#include "SkPaint.h"
#include "SkPath.h"
#include "SkRefCnt.h"
diff --git a/src/gpu/GrGlyph.h b/src/gpu/GrGlyph.h
index fb998a4947..5e611ce168 100644
--- a/src/gpu/GrGlyph.h
+++ b/src/gpu/GrGlyph.h
@@ -13,6 +13,7 @@
#include "GrTypes.h"
#include "SkChecksum.h"
+#include "SkFixed.h"
#include "SkPath.h"
class GrPlot;
diff --git a/src/ports/SkFontMgr_android_parser.cpp b/src/ports/SkFontMgr_android_parser.cpp
index dbc1dee92e..24242830ce 100644
--- a/src/ports/SkFontMgr_android_parser.cpp
+++ b/src/ports/SkFontMgr_android_parser.cpp
@@ -7,6 +7,7 @@
// Despite the name and location, this is portable code.
+#include "SkFixed.h"
#include "SkFontMgr.h"
#include "SkFontMgr_android_parser.h"
#include "SkStream.h"
diff --git a/src/utils/SkInterpolator.cpp b/src/utils/SkInterpolator.cpp
index c867587399..d3c0b26fef 100644
--- a/src/utils/SkInterpolator.cpp
+++ b/src/utils/SkInterpolator.cpp
@@ -6,6 +6,7 @@
*/
+#include "SkFixed.h"
#include "SkInterpolator.h"
#include "SkMath.h"
#include "SkTSearch.h"
diff --git a/tests/FontMgrAndroidParserTest.cpp b/tests/FontMgrAndroidParserTest.cpp
index 5f6ff06fe8..92dbd951c0 100644
--- a/tests/FontMgrAndroidParserTest.cpp
+++ b/tests/FontMgrAndroidParserTest.cpp
@@ -7,6 +7,7 @@
#include "Resources.h"
#include "SkCommandLineFlags.h"
+#include "SkFixed.h"
#include "SkFontMgr_android_parser.h"
#include "Test.h"
diff --git a/tests/MathTest.cpp b/tests/MathTest.cpp
index 5bc2d0ebf7..580cd941fa 100644
--- a/tests/MathTest.cpp
+++ b/tests/MathTest.cpp
@@ -7,6 +7,7 @@
#include "SkColorPriv.h"
#include "SkEndian.h"
+#include "SkFixed.h"
#include "SkFloatBits.h"
#include "SkFloatingPoint.h"
#include "SkHalf.h"