aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-03-18 17:53:38 +0000
committerGravatar robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-03-18 17:53:38 +0000
commit0bd80fa01bba2b3f0f49937fcb17928c74bde5a6 (patch)
treef22c8c5a92625ce558f350fb36682101af21211c
parentcd9caa8017fbcb5538011013d6eba17a22fe6fc0 (diff)
Added toString to SkMaskFilter-derived classes
-rw-r--r--include/core/SkMaskFilter.h2
-rw-r--r--include/effects/SkEmbossMaskFilter.h1
-rw-r--r--include/effects/SkKernel33MaskFilter.h3
-rw-r--r--include/effects/SkStippleMaskFilter.h1
-rw-r--r--include/effects/SkTableMaskFilter.h1
-rw-r--r--samplecode/SampleText.cpp22
-rw-r--r--src/core/SkPaint.cpp1
-rw-r--r--src/effects/SkBlurMaskFilter.cpp31
-rw-r--r--src/effects/SkEmbossMaskFilter.cpp22
-rw-r--r--src/effects/SkKernel33MaskFilter.cpp23
-rw-r--r--src/effects/SkStippleMaskFilter.cpp8
-rw-r--r--src/effects/SkTableMaskFilter.cpp15
12 files changed, 129 insertions, 1 deletions
diff --git a/include/core/SkMaskFilter.h b/include/core/SkMaskFilter.h
index a874e62b48..aa499ecd23 100644
--- a/include/core/SkMaskFilter.h
+++ b/include/core/SkMaskFilter.h
@@ -93,6 +93,8 @@ public:
*/
virtual void computeFastBounds(const SkRect& src, SkRect* dest) const;
+ SkDEVCODE(virtual void toString(SkString* str) const = 0;)
+
protected:
// empty for now, but lets get our subclass to remember to init us for the future
SkMaskFilter(SkFlattenableReadBuffer& buffer) : INHERITED(buffer) {}
diff --git a/include/effects/SkEmbossMaskFilter.h b/include/effects/SkEmbossMaskFilter.h
index ce6447371f..c6679200b3 100644
--- a/include/effects/SkEmbossMaskFilter.h
+++ b/include/effects/SkEmbossMaskFilter.h
@@ -32,6 +32,7 @@ public:
virtual bool filterMask(SkMask* dst, const SkMask& src, const SkMatrix&,
SkIPoint* margin) const SK_OVERRIDE;
+ SkDEVCODE(virtual void toString(SkString* str) const SK_OVERRIDE;)
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkEmbossMaskFilter)
protected:
diff --git a/include/effects/SkKernel33MaskFilter.h b/include/effects/SkKernel33MaskFilter.h
index 9fcbb6afa7..3404b73b17 100644
--- a/include/effects/SkKernel33MaskFilter.h
+++ b/include/effects/SkKernel33MaskFilter.h
@@ -21,6 +21,8 @@ public:
virtual bool filterMask(SkMask*, const SkMask&, const SkMatrix&,
SkIPoint*) const SK_OVERRIDE;
+ SkDEVCODE(virtual void toString(SkString* str) const SK_OVERRIDE;)
+
protected:
SkKernel33ProcMaskFilter(SkFlattenableReadBuffer& rb);
virtual void flatten(SkFlattenableWriteBuffer&) const SK_OVERRIDE;
@@ -44,6 +46,7 @@ public:
// override from SkKernel33ProcMaskFilter
virtual uint8_t computeValue(uint8_t* const* srcRows) const SK_OVERRIDE;
+ SkDEVCODE(virtual void toString(SkString* str) const SK_OVERRIDE;)
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkKernel33MaskFilter)
private:
diff --git a/include/effects/SkStippleMaskFilter.h b/include/effects/SkStippleMaskFilter.h
index be03c4590e..8f6d20d9ca 100644
--- a/include/effects/SkStippleMaskFilter.h
+++ b/include/effects/SkStippleMaskFilter.h
@@ -27,6 +27,7 @@ public:
return SkMask::kA8_Format;
}
+ SkDEVCODE(virtual void toString(SkString* str) const SK_OVERRIDE;)
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkStippleMaskFilter);
protected:
diff --git a/include/effects/SkTableMaskFilter.h b/include/effects/SkTableMaskFilter.h
index feb3b13847..ac33266f80 100644
--- a/include/effects/SkTableMaskFilter.h
+++ b/include/effects/SkTableMaskFilter.h
@@ -47,6 +47,7 @@ public:
virtual bool filterMask(SkMask*, const SkMask&, const SkMatrix&,
SkIPoint*) const SK_OVERRIDE;
+ SkDEVCODE(virtual void toString(SkString* str) const SK_OVERRIDE;)
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkTableMaskFilter)
protected:
diff --git a/samplecode/SampleText.cpp b/samplecode/SampleText.cpp
index ee447d3066..5873091836 100644
--- a/samplecode/SampleText.cpp
+++ b/samplecode/SampleText.cpp
@@ -48,10 +48,21 @@ public:
// if (c < min) c = min;
return c;
}
+
+#ifdef SK_DEVELOPER
+ virtual void toString(SkString* str) const SK_OVERRIDE {
+ str->append("ReduceNoise: (");
+ this->INHERITED::toString(str);
+ str->append(")");
+ }
+#endif
+
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(ReduceNoise)
private:
ReduceNoise(SkFlattenableReadBuffer& rb) : SkKernel33ProcMaskFilter(rb) {}
+
+ typedef SkKernel33ProcMaskFilter INHERITED;
};
class Darken : public SkKernel33ProcMaskFilter {
@@ -69,10 +80,21 @@ public:
SkASSERT(f >= 0 && f <= 1);
return (int)(f * 255);
}
+
+#ifdef SK_DEVELOPER
+ virtual void toString(SkString* str) const SK_OVERRIDE {
+ str->append("Darken: (");
+ this->INHERITED::toString(str);
+ str->append(")");
+ }
+#endif
+
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(Darken)
private:
Darken(SkFlattenableReadBuffer& rb) : SkKernel33ProcMaskFilter(rb) {}
+
+ typedef SkKernel33ProcMaskFilter INHERITED;
};
static SkMaskFilter* makemf() { return new Darken(0x30); }
diff --git a/src/core/SkPaint.cpp b/src/core/SkPaint.cpp
index b9dc5e5d0e..c7ad933dd1 100644
--- a/src/core/SkPaint.cpp
+++ b/src/core/SkPaint.cpp
@@ -2295,6 +2295,7 @@ void SkPaint::toString(SkString* str) const {
SkMaskFilter* maskFilter = this->getMaskFilter();
if (NULL != maskFilter) {
str->append("<dt>MaskFilter:</dt><dd>");
+ SkDEVCODE(maskFilter->toString(str);)
str->append("</dd>");
}
diff --git a/src/effects/SkBlurMaskFilter.cpp b/src/effects/SkBlurMaskFilter.cpp
index 88043ff6fe..2329b0f685 100644
--- a/src/effects/SkBlurMaskFilter.cpp
+++ b/src/effects/SkBlurMaskFilter.cpp
@@ -13,6 +13,7 @@
#include "SkBounder.h"
#include "SkRasterClip.h"
#include "SkRTConf.h"
+#include "SkStringUtils.h"
class SkBlurMaskFilterImpl : public SkMaskFilter {
public:
@@ -27,6 +28,7 @@ public:
virtual BlurType asABlur(BlurInfo*) const SK_OVERRIDE;
virtual void computeFastBounds(const SkRect&, SkRect*) const SK_OVERRIDE;
+ SkDEVCODE(virtual void toString(SkString* str) const SK_OVERRIDE;)
SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkBlurMaskFilterImpl)
protected:
@@ -339,6 +341,35 @@ SkMaskFilter::BlurType SkBlurMaskFilterImpl::asABlur(BlurInfo* info) const {
return gBlurStyle2BlurType[fBlurStyle];
}
+#ifdef SK_DEVELOPER
+void SkBlurMaskFilterImpl::toString(SkString* str) const {
+ str->append("SkBlurMaskFilterImpl: (");
+
+ str->append("radius: ");
+ str->appendScalar(fRadius);
+ str->append(" ");
+
+ static const char* gStyleName[SkBlurMaskFilter::kBlurStyleCount] = {
+ "normal", "solid", "outer", "inner"
+ };
+
+ str->appendf("style: %s ", gStyleName[fBlurStyle]);
+ str->append("flags: (");
+ if (fBlurFlags) {
+ bool needSeparator = false;
+ SkAddFlagToString(str,
+ SkToBool(fBlurFlags & SkBlurMaskFilter::kIgnoreTransform_BlurFlag),
+ "IgnoreXform", &needSeparator);
+ SkAddFlagToString(str,
+ SkToBool(fBlurFlags & SkBlurMaskFilter::kHighQuality_BlurFlag),
+ "HighQuality", &needSeparator);
+ } else {
+ str->append("None");
+ }
+ str->append("))");
+}
+#endif
+
SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_START(SkBlurMaskFilter)
SK_DEFINE_FLATTENABLE_REGISTRAR_ENTRY(SkBlurMaskFilterImpl)
SK_DEFINE_FLATTENABLE_REGISTRAR_GROUP_END
diff --git a/src/effects/SkEmbossMaskFilter.cpp b/src/effects/SkEmbossMaskFilter.cpp
index 0c9158586f..a205fccf15 100644
--- a/src/effects/SkEmbossMaskFilter.cpp
+++ b/src/effects/SkEmbossMaskFilter.cpp
@@ -12,6 +12,7 @@
#include "SkBlurMask.h"
#include "SkEmbossMask.h"
#include "SkFlattenableBuffers.h"
+#include "SkString.h"
static inline int pin2byte(int n) {
if (n < 0) {
@@ -131,3 +132,24 @@ void SkEmbossMaskFilter::flatten(SkFlattenableWriteBuffer& buffer) const {
buffer.writeByteArray(&tmpLight, sizeof(tmpLight));
buffer.writeScalar(fBlurRadius);
}
+
+#ifdef SK_DEVELOPER
+void SkEmbossMaskFilter::toString(SkString* str) const {
+ str->append("SkEmbossMaskFilter: (");
+
+ str->append("direction: (");
+ str->appendScalar(fLight.fDirection[0]);
+ str->append(", ");
+ str->appendScalar(fLight.fDirection[1]);
+ str->append(", ");
+ str->appendScalar(fLight.fDirection[2]);
+ str->append(") ");
+
+ str->appendf("ambient: %d specular: %d ",
+ fLight.fAmbient, fLight.fSpecular);
+
+ str->append("blurRadius: ");
+ str->appendScalar(fBlurRadius);
+ str->append(")");
+}
+#endif
diff --git a/src/effects/SkKernel33MaskFilter.cpp b/src/effects/SkKernel33MaskFilter.cpp
index 9c42b398c7..485001bbe3 100644
--- a/src/effects/SkKernel33MaskFilter.cpp
+++ b/src/effects/SkKernel33MaskFilter.cpp
@@ -8,6 +8,7 @@
#include "SkKernel33MaskFilter.h"
#include "SkColorPriv.h"
#include "SkFlattenableBuffers.h"
+#include "SkString.h"
SkMask::Format SkKernel33ProcMaskFilter::getFormat() const {
return SkMask::kA8_Format;
@@ -84,6 +85,12 @@ SkKernel33ProcMaskFilter::SkKernel33ProcMaskFilter(SkFlattenableReadBuffer& rb)
fPercent256 = rb.readInt();
}
+#ifdef SK_DEVELOPER
+void SkKernel33ProcMaskFilter::toString(SkString* str) const {
+ str->appendf("percent256: %d, ", fPercent256);
+}
+#endif
+
///////////////////////////////////////////////////////////////////////////////
uint8_t SkKernel33MaskFilter::computeValue(uint8_t* const* srcRows) const {
@@ -117,3 +124,19 @@ SkKernel33MaskFilter::SkKernel33MaskFilter(SkFlattenableReadBuffer& rb)
SkASSERT(9 == count);
fShift = rb.readInt();
}
+
+#ifdef SK_DEVELOPER
+void SkKernel33MaskFilter::toString(SkString* str) const {
+ str->append("SkKernel33MaskFilter: (");
+
+ str->appendf("kernel: (%d, %d, %d, %d, %d, %d, %d, %d, %d), ",
+ fKernel[0][0], fKernel[0][1], fKernel[0][2],
+ fKernel[1][0], fKernel[1][1], fKernel[1][2],
+ fKernel[2][0], fKernel[2][1], fKernel[2][2]);
+ str->appendf("shift: %d, ", fShift);
+
+ this->INHERITED::toString(str);
+
+ str->append(")");
+}
+#endif
diff --git a/src/effects/SkStippleMaskFilter.cpp b/src/effects/SkStippleMaskFilter.cpp
index 24b9114400..14f30ec651 100644
--- a/src/effects/SkStippleMaskFilter.cpp
+++ b/src/effects/SkStippleMaskFilter.cpp
@@ -6,7 +6,7 @@
*/
#include "SkStippleMaskFilter.h"
-
+#include "SkString.h"
bool SkStippleMaskFilter::filterMask(SkMask* dst,
const SkMask& src,
@@ -44,3 +44,9 @@ bool SkStippleMaskFilter::filterMask(SkMask* dst,
return true;
}
+
+#ifdef SK_DEVELOPER
+void SkStippleMaskFilter::toString(SkString* str) const {
+ str->append("SkStippleMaskFilter: ()");
+}
+#endif
diff --git a/src/effects/SkTableMaskFilter.cpp b/src/effects/SkTableMaskFilter.cpp
index ada5d01217..5bff4def29 100644
--- a/src/effects/SkTableMaskFilter.cpp
+++ b/src/effects/SkTableMaskFilter.cpp
@@ -9,6 +9,7 @@
#include "SkTableMaskFilter.h"
#include "SkFlattenableBuffers.h"
+#include "SkString.h"
SkTableMaskFilter::SkTableMaskFilter() {
for (int i = 0; i < 256; i++) {
@@ -126,3 +127,17 @@ void SkTableMaskFilter::MakeClipTable(uint8_t table[256], uint8_t min,
SkDebugf("\n\n");
#endif
}
+
+#ifdef SK_DEVELOPER
+void SkTableMaskFilter::toString(SkString* str) const {
+ str->append("SkTableMaskFilter: (");
+
+ str->append("table: ");
+ for (int i = 0; i < 255; ++i) {
+ str->appendf("%d, ", fTable[i]);
+ }
+ str->appendf("%d", fTable[255]);
+
+ str->append(")");
+}
+#endif