Create macro for registering classes for deserialization
Review URL: https://codereview.appspot.com/5909063
git-svn-id: http://skia.googlecode.com/svn/trunk@3494 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/animator/SkDrawExtraPathEffect.cpp b/src/animator/SkDrawExtraPathEffect.cpp
index 12e0368..c901df3 100644
--- a/src/animator/SkDrawExtraPathEffect.cpp
+++ b/src/animator/SkDrawExtraPathEffect.cpp
@@ -91,6 +91,8 @@
fDraw(draw), fMaker(maker) {
}
+ SK_DECLARE_UNFLATTENABLE_OBJECT()
+
protected:
virtual SkScalar begin(SkScalar contourLength)
{
@@ -139,7 +141,6 @@
private:
virtual void flatten(SkFlattenableWriteBuffer& ) {}
- virtual Factory getFactory() { return NULL; }
static bool GetContourLength(const char* token, size_t len, void* clen, SkScriptValue* value) {
if (SK_LITERAL_STR_EQUAL("contourLength", token, len)) {
diff --git a/src/animator/SkDrawGradient.cpp b/src/animator/SkDrawGradient.cpp
index 37fc7e8..2cad722 100644
--- a/src/animator/SkDrawGradient.cpp
+++ b/src/animator/SkDrawGradient.cpp
@@ -35,8 +35,7 @@
SkGradientUnitMapper(SkAnimateMaker* maker, const char* script) : fMaker(maker), fScript(script) {
}
- // overrides for SkFlattenable
- virtual Factory getFactory() { return NULL; }
+ SK_DECLARE_UNFLATTENABLE_OBJECT()
protected:
virtual uint16_t mapUnit16(uint16_t x) {
diff --git a/src/core/SkBitmapProcShader.h b/src/core/SkBitmapProcShader.h
index cd70279..6140259 100644
--- a/src/core/SkBitmapProcShader.h
+++ b/src/core/SkBitmapProcShader.h
@@ -30,17 +30,13 @@
static bool CanDo(const SkBitmap&, TileMode tx, TileMode ty);
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkBitmapProcShader, (buffer));
- }
-
// override from flattenable
virtual bool toDumpString(SkString* str) const;
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkBitmapProcShader)
protected:
SkBitmapProcShader(SkFlattenableReadBuffer& );
virtual void flatten(SkFlattenableWriteBuffer& );
- virtual Factory getFactory() { return CreateProc; }
SkBitmap fRawBitmap; // experimental for RLE encoding
SkBitmapProcState fState;
diff --git a/src/core/SkBlitter.cpp b/src/core/SkBlitter.cpp
index df25b7c..2ce0197 100644
--- a/src/core/SkBlitter.cpp
+++ b/src/core/SkBlitter.cpp
@@ -656,6 +656,8 @@
this->INHERITED::endSession();
}
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(Sk3DShader)
+
protected:
Sk3DShader(SkFlattenableReadBuffer& buffer) :
INHERITED(buffer) {
@@ -670,15 +672,7 @@
buffer.write32(fPMColor);
}
- virtual Factory getFactory() {
- return CreateProc;
- }
-
private:
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(Sk3DShader, (buffer));
- }
-
SkShader* fProxy;
SkPMColor fPMColor;
const SkMask* fMask;
diff --git a/src/core/SkDraw.cpp b/src/core/SkDraw.cpp
index c118d1e..74d10b6 100644
--- a/src/core/SkDraw.cpp
+++ b/src/core/SkDraw.cpp
@@ -2212,18 +2212,15 @@
virtual void shadeSpan(int x, int y, SkPMColor dstC[], int count);
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkTriColorShader)
+
protected:
SkTriColorShader(SkFlattenableReadBuffer& buffer) : SkShader(buffer) {}
- virtual Factory getFactory() { return CreateProc; }
-
private:
SkMatrix fDstToUnit;
SkPMColor fColors[3];
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkTriColorShader, (buffer));
- }
typedef SkShader INHERITED;
};
diff --git a/src/core/SkPathEffect.cpp b/src/core/SkPathEffect.cpp
index 852c25f..0c0143d 100644
--- a/src/core/SkPathEffect.cpp
+++ b/src/core/SkPathEffect.cpp
@@ -108,14 +108,6 @@
return true;
}
-SkFlattenable::Factory SkStrokePathEffect::getFactory() {
- return CreateProc;
-}
-
-SkFlattenable* SkStrokePathEffect::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkStrokePathEffect, (buffer));
-}
-
void SkStrokePathEffect::flatten(SkFlattenableWriteBuffer& buffer) {
buffer.writeScalar(fWidth);
buffer.writeScalar(fMiter);
diff --git a/src/core/SkShader.cpp b/src/core/SkShader.cpp
index 618b8d2..a3b3b6a 100644
--- a/src/core/SkShader.cpp
+++ b/src/core/SkShader.cpp
@@ -247,14 +247,6 @@
buffer.write32(fColor);
}
-SkFlattenable* SkColorShader::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkColorShader, (buffer));
-}
-
-SkFlattenable::Factory SkColorShader::getFactory() {
- return CreateProc;
-}
-
uint32_t SkColorShader::getFlags() {
return fFlags;
}
@@ -359,8 +351,6 @@
SkDEBUGFAIL("should never get called, since setContext() returned false");
}
-SkFlattenable::Factory SkEmptyShader::getFactory() { return NULL; }
-
void SkEmptyShader::flatten(SkFlattenableWriteBuffer& buffer) {
this->INHERITED::flatten(buffer);
}
diff --git a/src/core/SkShape.cpp b/src/core/SkShape.cpp
index 339601a..0c4907e 100644
--- a/src/core/SkShape.cpp
+++ b/src/core/SkShape.cpp
@@ -60,14 +60,6 @@
inc_shape(this);
}
-SkFlattenable* SkShape::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkShape, (buffer));
-}
-
-SkFlattenable::Factory SkShape::getFactory() {
- return CreateProc;
-}
-
void SkShape::flatten(SkFlattenableWriteBuffer& buffer) {
this->INHERITED::flatten(buffer);
}
diff --git a/src/core/SkXfermode.cpp b/src/core/SkXfermode.cpp
index 952e0f2..bcb721d 100644
--- a/src/core/SkXfermode.cpp
+++ b/src/core/SkXfermode.cpp
@@ -729,15 +729,12 @@
return true;
}
- virtual Factory getFactory() { return CreateProc; }
virtual void flatten(SkFlattenableWriteBuffer& buffer) {
this->INHERITED::flatten(buffer);
buffer.write32(fMode);
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkProcCoeffXfermode, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkProcCoeffXfermode)
protected:
SkProcCoeffXfermode(SkFlattenableReadBuffer& buffer)
@@ -768,11 +765,8 @@
virtual void xfer32(SkPMColor*, const SkPMColor*, int, const SkAlpha*) SK_OVERRIDE;
virtual void xferA8(SkAlpha*, const SkPMColor*, int, const SkAlpha*) SK_OVERRIDE;
- virtual Factory getFactory() SK_OVERRIDE { return CreateProc; }
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkClearXfermode, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkClearXfermode)
private:
SkClearXfermode(SkFlattenableReadBuffer& buffer)
@@ -825,11 +819,8 @@
virtual void xfer32(SkPMColor*, const SkPMColor*, int, const SkAlpha*) SK_OVERRIDE;
virtual void xferA8(SkAlpha*, const SkPMColor*, int, const SkAlpha*) SK_OVERRIDE;
- virtual Factory getFactory() SK_OVERRIDE { return CreateProc; }
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkSrcXfermode, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkSrcXfermode)
private:
SkSrcXfermode(SkFlattenableReadBuffer& buffer)
@@ -887,11 +878,8 @@
SkDstInXfermode(const ProcCoeff& rec) : SkProcCoeffXfermode(rec, kDstIn_Mode) {}
virtual void xfer32(SkPMColor*, const SkPMColor*, int, const SkAlpha*) SK_OVERRIDE;
- virtual Factory getFactory() SK_OVERRIDE { return CreateProc; }
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkDstInXfermode, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDstInXfermode)
private:
SkDstInXfermode(SkFlattenableReadBuffer& buffer) : INHERITED(buffer) {}
@@ -926,11 +914,8 @@
SkDstOutXfermode(const ProcCoeff& rec) : SkProcCoeffXfermode(rec, kDstOut_Mode) {}
virtual void xfer32(SkPMColor*, const SkPMColor*, int, const SkAlpha*) SK_OVERRIDE;
- virtual Factory getFactory() SK_OVERRIDE { return CreateProc; }
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkDstOutXfermode, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkDstOutXfermode)
private:
SkDstOutXfermode(SkFlattenableReadBuffer& buffer)
diff --git a/src/effects/Sk2DPathEffect.cpp b/src/effects/Sk2DPathEffect.cpp
index 23037f7..60ec257 100644
--- a/src/effects/Sk2DPathEffect.cpp
+++ b/src/effects/Sk2DPathEffect.cpp
@@ -80,14 +80,6 @@
fMatrix.invert(&fInverse);
}
-SkFlattenable::Factory Sk2DPathEffect::getFactory() {
- return CreateProc;
-}
-
-SkFlattenable* Sk2DPathEffect::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(Sk2DPathEffect, (buffer));
-}
-
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
@@ -100,19 +92,11 @@
fPath.unflatten(buffer);
}
-SkFlattenable* SkPath2DPathEffect::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkPath2DPathEffect, (buffer));
-}
-
void SkPath2DPathEffect::flatten(SkFlattenableWriteBuffer& buffer) {
this->INHERITED::flatten(buffer);
fPath.flatten(buffer);
}
-SkFlattenable::Factory SkPath2DPathEffect::getFactory() {
- return CreateProc;
-}
-
void SkPath2DPathEffect::next(const SkPoint& loc, int u, int v, SkPath* dst) {
dst->addPath(fPath, loc.fX, loc.fY);
}
diff --git a/src/effects/SkArithmeticMode.cpp b/src/effects/SkArithmeticMode.cpp
index 8190b39..cf651e1 100644
--- a/src/effects/SkArithmeticMode.cpp
+++ b/src/effects/SkArithmeticMode.cpp
@@ -13,20 +13,13 @@
virtual void xfer32(SkPMColor dst[], const SkPMColor src[], int count,
const SkAlpha aa[]) SK_OVERRIDE;
- virtual Factory getFactory() SK_OVERRIDE;
- static SkFlattenable* Create(SkFlattenableReadBuffer& buffer) {
- return NULL;
- }
+ SK_DECLARE_UNFLATTENABLE_OBJECT()
private:
SkScalar fK[4];
};
-SkFlattenable::Factory SkArithmeticMode_scalar::getFactory() {
- return Create;
-}
-
static int pinToByte(int value) {
if (value < 0) {
value = 0;
diff --git a/src/effects/SkAvoidXfermode.cpp b/src/effects/SkAvoidXfermode.cpp
index d198884..d668222 100644
--- a/src/effects/SkAvoidXfermode.cpp
+++ b/src/effects/SkAvoidXfermode.cpp
@@ -38,16 +38,6 @@
buffer.write8(fMode);
}
-SkFlattenable* SkAvoidXfermode::Create(SkFlattenableReadBuffer& rb)
-{
- return SkNEW_ARGS(SkAvoidXfermode, (rb));
-}
-
-SkFlattenable::Factory SkAvoidXfermode::getFactory()
-{
- return Create;
-}
-
// returns 0..31
static unsigned color_dist16(uint16_t c, unsigned r, unsigned g, unsigned b)
{
diff --git a/src/effects/SkBlurMaskFilter.cpp b/src/effects/SkBlurMaskFilter.cpp
index fe428d9..eb64000 100644
--- a/src/effects/SkBlurMaskFilter.cpp
+++ b/src/effects/SkBlurMaskFilter.cpp
@@ -25,10 +25,9 @@
virtual void computeFastBounds(const SkRect& src, SkRect* dst) SK_OVERRIDE;
// overrides from SkFlattenable
- virtual Factory getFactory() SK_OVERRIDE;
virtual void flatten(SkFlattenableWriteBuffer&) SK_OVERRIDE;
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer&);
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkBlurMaskFilterImpl)
private:
SkScalar fRadius;
@@ -104,14 +103,6 @@
src.fRight + fRadius, src.fBottom + fRadius);
}
-SkFlattenable* SkBlurMaskFilterImpl::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkBlurMaskFilterImpl, (buffer));
-}
-
-SkFlattenable::Factory SkBlurMaskFilterImpl::getFactory() {
- return CreateProc;
-}
-
SkBlurMaskFilterImpl::SkBlurMaskFilterImpl(SkFlattenableReadBuffer& buffer)
: SkMaskFilter(buffer) {
fRadius = buffer.readScalar();
diff --git a/src/effects/SkColorFilters.cpp b/src/effects/SkColorFilters.cpp
index e6262c1..2970c7c 100644
--- a/src/effects/SkColorFilters.cpp
+++ b/src/effects/SkColorFilters.cpp
@@ -96,13 +96,9 @@
sk_memset16(result, SkPixel32ToPixel16(fPMColor), count);
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(Src_SkModeColorFilter, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(Src_SkModeColorFilter)
protected:
- virtual Factory getFactory() { return CreateProc; }
-
Src_SkModeColorFilter(SkFlattenableReadBuffer& buffer)
: INHERITED(buffer) {}
@@ -139,13 +135,9 @@
sk_memset16(result, SkPixel32ToPixel16(fPMColor), count);
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SrcOver_SkModeColorFilter, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SrcOver_SkModeColorFilter)
protected:
- virtual Factory getFactory() { return CreateProc; }
-
SrcOver_SkModeColorFilter(SkFlattenableReadBuffer& buffer)
: INHERITED(buffer), fColor32Proc(NULL) {}
@@ -198,9 +190,7 @@
}
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(Proc_SkModeColorFilter, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(Proc_SkModeColorFilter)
protected:
virtual void flatten(SkFlattenableWriteBuffer& buffer) {
@@ -209,10 +199,6 @@
buffer.writeFunctionPtr((void*)fProc16);
}
- virtual Factory getFactory() {
- return CreateProc;
- }
-
Proc_SkModeColorFilter(SkFlattenableReadBuffer& buffer) : INHERITED(buffer) {
fProc = (SkXfermodeProc) buffer.readFunctionPtr();
fProc16 = (SkXfermodeProc16) buffer.readFunctionPtr();
@@ -323,9 +309,7 @@
}
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkLightingColorFilter, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkLightingColorFilter)
protected:
virtual void flatten(SkFlattenableWriteBuffer& buffer) {
@@ -334,10 +318,6 @@
buffer.write32(fAdd);
}
- virtual Factory getFactory() {
- return CreateProc;
- }
-
SkLightingColorFilter(SkFlattenableReadBuffer& buffer) {
fMul = buffer.readU32();
fAdd = buffer.readU32();
@@ -374,13 +354,9 @@
}
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkLightingColorFilter_JustAdd, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkLightingColorFilter_JustAdd)
protected:
- virtual Factory getFactory() { return CreateProc; }
-
SkLightingColorFilter_JustAdd(SkFlattenableReadBuffer& buffer)
: INHERITED(buffer) {}
@@ -412,13 +388,9 @@
}
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkLightingColorFilter_JustMul, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkLightingColorFilter_JustMul)
protected:
- virtual Factory getFactory() { return CreateProc; }
-
SkLightingColorFilter_JustMul(SkFlattenableReadBuffer& buffer)
: INHERITED(buffer) {}
@@ -453,13 +425,9 @@
}
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkLightingColorFilter_SingleMul, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkLightingColorFilter_SingleMul)
protected:
- virtual Factory getFactory() { return CreateProc; }
-
SkLightingColorFilter_SingleMul(SkFlattenableReadBuffer& buffer)
: INHERITED(buffer) {}
@@ -496,13 +464,9 @@
}
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkLightingColorFilter_NoPin, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkLightingColorFilter_NoPin)
protected:
- virtual Factory getFactory() { return CreateProc; }
-
SkLightingColorFilter_NoPin(SkFlattenableReadBuffer& buffer)
: INHERITED(buffer) {}
diff --git a/src/effects/SkColorMatrixFilter.cpp b/src/effects/SkColorMatrixFilter.cpp
index 79fbea5..47ff8ad 100644
--- a/src/effects/SkColorMatrixFilter.cpp
+++ b/src/effects/SkColorMatrixFilter.cpp
@@ -318,8 +318,6 @@
buffer.write32(fFlags);
}
-SkFlattenable::Factory SkColorMatrixFilter::getFactory() { return CreateProc; }
-
SkColorMatrixFilter::SkColorMatrixFilter(SkFlattenableReadBuffer& buffer)
: INHERITED(buffer) {
fProc = (Proc)buffer.readFunctionPtr();
@@ -344,10 +342,6 @@
return true;
}
-SkFlattenable* SkColorMatrixFilter::CreateProc(SkFlattenableReadBuffer& buf) {
- return SkNEW_ARGS(SkColorMatrixFilter, (buf));
-}
-
void SkColorMatrixFilter::setMatrix(const SkColorMatrix& matrix) {
setup(matrix.fMat);
}
diff --git a/src/effects/SkCornerPathEffect.cpp b/src/effects/SkCornerPathEffect.cpp
index 4da31ab..5eb94a4 100644
--- a/src/effects/SkCornerPathEffect.cpp
+++ b/src/effects/SkCornerPathEffect.cpp
@@ -129,18 +129,10 @@
return true;
}
-SkFlattenable::Factory SkCornerPathEffect::getFactory() {
- return CreateProc;
-}
-
void SkCornerPathEffect::flatten(SkFlattenableWriteBuffer& buffer) {
buffer.writeScalar(fRadius);
}
-SkFlattenable* SkCornerPathEffect::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkCornerPathEffect, (buffer));
-}
-
SkCornerPathEffect::SkCornerPathEffect(SkFlattenableReadBuffer& buffer) {
fRadius = buffer.readScalar();
}
diff --git a/src/effects/SkDiscretePathEffect.cpp b/src/effects/SkDiscretePathEffect.cpp
index a438859..089bed6 100644
--- a/src/effects/SkDiscretePathEffect.cpp
+++ b/src/effects/SkDiscretePathEffect.cpp
@@ -67,14 +67,6 @@
return true;
}
-SkFlattenable::Factory SkDiscretePathEffect::getFactory() {
- return CreateProc;
-}
-
-SkFlattenable* SkDiscretePathEffect::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkDiscretePathEffect, (buffer));
-}
-
void SkDiscretePathEffect::flatten(SkFlattenableWriteBuffer& buffer) {
buffer.writeScalar(fSegLength);
buffer.writeScalar(fPerterb);
diff --git a/src/effects/SkEmbossMaskFilter.cpp b/src/effects/SkEmbossMaskFilter.cpp
index ce37718..26a5e2e 100644
--- a/src/effects/SkEmbossMaskFilter.cpp
+++ b/src/effects/SkEmbossMaskFilter.cpp
@@ -115,14 +115,6 @@
return true;
}
-SkFlattenable* SkEmbossMaskFilter::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkEmbossMaskFilter, (buffer));
-}
-
-SkFlattenable::Factory SkEmbossMaskFilter::getFactory() {
- return CreateProc;
-}
-
SkEmbossMaskFilter::SkEmbossMaskFilter(SkFlattenableReadBuffer& buffer)
: SkMaskFilter(buffer) {
buffer.read(&fLight, sizeof(fLight));
diff --git a/src/effects/SkGradientShader.cpp b/src/effects/SkGradientShader.cpp
index c9929b4..0fcb514 100644
--- a/src/effects/SkGradientShader.cpp
+++ b/src/effects/SkGradientShader.cpp
@@ -849,10 +849,6 @@
SkScalar* twoPointRadialParams) const SK_OVERRIDE;
virtual GradientType asAGradient(GradientInfo* info) const SK_OVERRIDE;
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(Linear_Gradient, (buffer));
- }
-
virtual void flatten(SkFlattenableWriteBuffer& buffer) SK_OVERRIDE {
this->INHERITED::flatten(buffer);
buffer.writeScalar(fStart.fX);
@@ -861,13 +857,14 @@
buffer.writeScalar(fEnd.fY);
}
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(Linear_Gradient)
+
protected:
Linear_Gradient(SkFlattenableReadBuffer& buffer)
: Gradient_Shader(buffer),
fStart(unflatten_point(buffer)),
fEnd(unflatten_point(buffer)) {
}
- virtual Factory getFactory() SK_OVERRIDE { return CreateProc; }
private:
typedef Gradient_Shader INHERITED;
@@ -1510,10 +1507,6 @@
return kRadial_GradientType;
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(Radial_Gradient, (buffer));
- }
-
virtual void flatten(SkFlattenableWriteBuffer& buffer) SK_OVERRIDE {
this->INHERITED::flatten(buffer);
buffer.writeScalar(fCenter.fX);
@@ -1521,13 +1514,14 @@
buffer.writeScalar(fRadius);
}
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(Radial_Gradient)
+
protected:
Radial_Gradient(SkFlattenableReadBuffer& buffer)
: Gradient_Shader(buffer),
fCenter(unflatten_point(buffer)),
fRadius(buffer.readScalar()) {
}
- virtual Factory getFactory() SK_OVERRIDE { return CreateProc; }
private:
typedef Gradient_Shader INHERITED;
@@ -2045,10 +2039,6 @@
return true;
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(Two_Point_Radial_Gradient, (buffer));
- }
-
virtual void flatten(SkFlattenableWriteBuffer& buffer) SK_OVERRIDE {
this->INHERITED::flatten(buffer);
buffer.writeScalar(fCenter1.fX);
@@ -2059,6 +2049,8 @@
buffer.writeScalar(fRadius2);
}
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(Two_Point_Radial_Gradient)
+
protected:
Two_Point_Radial_Gradient(SkFlattenableReadBuffer& buffer)
: Gradient_Shader(buffer),
@@ -2068,7 +2060,6 @@
fRadius2(buffer.readScalar()) {
init();
};
- virtual Factory getFactory() SK_OVERRIDE { return CreateProc; }
private:
typedef Gradient_Shader INHERITED;
@@ -2134,24 +2125,20 @@
return kSweep_GradientType;
}
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(Sweep_Gradient, (buffer));
- }
-
virtual void flatten(SkFlattenableWriteBuffer& buffer) SK_OVERRIDE {
this->INHERITED::flatten(buffer);
buffer.writeScalar(fCenter.fX);
buffer.writeScalar(fCenter.fY);
}
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(Sweep_Gradient)
+
protected:
Sweep_Gradient(SkFlattenableReadBuffer& buffer)
: Gradient_Shader(buffer),
fCenter(unflatten_point(buffer)) {
}
- virtual Factory getFactory() SK_OVERRIDE { return CreateProc; }
-
private:
typedef Gradient_Shader INHERITED;
const SkPoint fCenter;
diff --git a/src/effects/SkGroupShape.cpp b/src/effects/SkGroupShape.cpp
index fd741ee..b27026e 100644
--- a/src/effects/SkGroupShape.cpp
+++ b/src/effects/SkGroupShape.cpp
@@ -83,10 +83,6 @@
}
}
-SkFlattenable::Factory SkGroupShape::getFactory() {
- return CreateProc;
-}
-
void SkGroupShape::flatten(SkFlattenableWriteBuffer& buffer) {
this->INHERITED::flatten(buffer);
@@ -127,9 +123,5 @@
}
}
-SkFlattenable* SkGroupShape::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkGroupShape, (buffer));
-}
-
SK_DEFINE_FLATTENABLE_REGISTRAR(SkGroupShape)
diff --git a/src/effects/SkKernel33MaskFilter.cpp b/src/effects/SkKernel33MaskFilter.cpp
index 852168c..f01451c 100644
--- a/src/effects/SkKernel33MaskFilter.cpp
+++ b/src/effects/SkKernel33MaskFilter.cpp
@@ -110,14 +110,6 @@
wb.write32(fShift);
}
-SkFlattenable::Factory SkKernel33MaskFilter::getFactory() {
- return Create;
-}
-
-SkFlattenable* SkKernel33MaskFilter::Create(SkFlattenableReadBuffer& rb) {
- return new SkKernel33MaskFilter(rb);
-}
-
SkKernel33MaskFilter::SkKernel33MaskFilter(SkFlattenableReadBuffer& rb)
: SkKernel33ProcMaskFilter(rb) {
rb.read(fKernel, 9 * sizeof(int));
diff --git a/src/effects/SkLayerRasterizer.cpp b/src/effects/SkLayerRasterizer.cpp
index 9b29550..ae4eb2e 100644
--- a/src/effects/SkLayerRasterizer.cpp
+++ b/src/effects/SkLayerRasterizer.cpp
@@ -216,13 +216,5 @@
}
}
-SkFlattenable* SkLayerRasterizer::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkLayerRasterizer, (buffer));
-}
-
-SkFlattenable::Factory SkLayerRasterizer::getFactory() {
- return CreateProc;
-}
-
SK_DEFINE_FLATTENABLE_REGISTRAR(SkLayerRasterizer)
diff --git a/src/effects/SkPixelXorXfermode.cpp b/src/effects/SkPixelXorXfermode.cpp
index 935a475..b4bbaf9 100644
--- a/src/effects/SkPixelXorXfermode.cpp
+++ b/src/effects/SkPixelXorXfermode.cpp
@@ -28,12 +28,4 @@
fOpColor = rb.readU32();
}
-SkFlattenable::Factory SkPixelXorXfermode::getFactory() {
- return Create;
-}
-
-SkFlattenable* SkPixelXorXfermode::Create(SkFlattenableReadBuffer& rb) {
- return SkNEW_ARGS(SkPixelXorXfermode, (rb));
-}
-
SK_DEFINE_FLATTENABLE_REGISTRAR(SkPixelXorXfermode)
diff --git a/src/effects/SkRectShape.cpp b/src/effects/SkRectShape.cpp
index 3e37072..d7e2628 100644
--- a/src/effects/SkRectShape.cpp
+++ b/src/effects/SkRectShape.cpp
@@ -60,10 +60,6 @@
}
}
-SkFlattenable::Factory SkRectShape::getFactory() {
- return CreateProc;
-}
-
void SkRectShape::flatten(SkFlattenableWriteBuffer& buffer) {
this->INHERITED::flatten(buffer);
@@ -76,10 +72,6 @@
buffer.read(&fRadii, sizeof(fRadii));
}
-SkFlattenable* SkRectShape::CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkRectShape, (buffer));
-}
-
///////////////////////////////////////////////////////////////////////////////
void SkPaintShape::flatten(SkFlattenableWriteBuffer& buffer) {
diff --git a/src/effects/SkTableColorFilter.cpp b/src/effects/SkTableColorFilter.cpp
index 5d71e23..8b60326 100644
--- a/src/effects/SkTableColorFilter.cpp
+++ b/src/effects/SkTableColorFilter.cpp
@@ -36,11 +36,8 @@
virtual void filterSpan(const SkPMColor src[], int count,
SkPMColor dst[]) SK_OVERRIDE;
virtual void flatten(SkFlattenableWriteBuffer&) SK_OVERRIDE;
- virtual Factory getFactory() SK_OVERRIDE;
- static SkFlattenable* CreateProc(SkFlattenableReadBuffer& buffer) {
- return SkNEW_ARGS(SkTable_ColorFilter, (buffer));
- }
+ SK_DECLARE_PUBLIC_FLATTENABLE_DESERIALIZATION_PROCS(SkTable_ColorFilter)
protected:
SkTable_ColorFilter(SkFlattenableReadBuffer& buffer);
@@ -139,10 +136,6 @@
}
}
-SkFlattenable::Factory SkTable_ColorFilter::getFactory() {
- return CreateProc;
-}
-
static const uint8_t gCountNibBits[] = {
0, 1, 1, 2,
1, 2, 2, 3,
diff --git a/src/effects/SkTableMaskFilter.cpp b/src/effects/SkTableMaskFilter.cpp
index 4024372..3a3d0e5 100644
--- a/src/effects/SkTableMaskFilter.cpp
+++ b/src/effects/SkTableMaskFilter.cpp
@@ -81,14 +81,6 @@
rb.read(fTable, 256);
}
-SkFlattenable* SkTableMaskFilter::Factory(SkFlattenableReadBuffer& rb) {
- return SkNEW_ARGS(SkTableMaskFilter, (rb));
-}
-
-SkFlattenable::Factory SkTableMaskFilter::getFactory() {
- return SkTableMaskFilter::Factory;
-}
-
///////////////////////////////////////////////////////////////////////////////
void SkTableMaskFilter::MakeGammaTable(uint8_t table[256], SkScalar gamma) {
diff --git a/src/effects/SkTestImageFilters.cpp b/src/effects/SkTestImageFilters.cpp
index 6378bc6..688e298 100755
--- a/src/effects/SkTestImageFilters.cpp
+++ b/src/effects/SkTestImageFilters.cpp
@@ -43,10 +43,6 @@
fOffset.fY = buffer.readScalar();
}
-SkFlattenable::Factory SkOffsetImageFilter::getFactory() {
- return CreateProc;
-}
-
///////////////////////////////////////////////////////////////////////////////
SkComposeImageFilter::~SkComposeImageFilter() {
@@ -100,10 +96,6 @@
fInner = (SkImageFilter*)buffer.readFlattenable();
}
-SkFlattenable::Factory SkComposeImageFilter::getFactory() {
- return CreateProc;
-}
-
///////////////////////////////////////////////////////////////////////////////
template <typename T> T* SkSafeRefReturn(T* obj) {
@@ -282,10 +274,6 @@
}
}
-SkFlattenable::Factory SkMergeImageFilter::getFactory() {
- return CreateProc;
-}
-
///////////////////////////////////////////////////////////////////////////////
#include "SkColorFilter.h"
@@ -329,10 +317,6 @@
fColorFilter = (SkColorFilter*)buffer.readFlattenable();
}
-SkFlattenable::Factory SkColorFilterImageFilter::getFactory() {
- return CreateProc;
-}
-
///////////////////////////////////////////////////////////////////////////////
bool SkDownSampleImageFilter::onFilterImage(Proxy* proxy, const SkBitmap& src,
@@ -395,10 +379,6 @@
fScale = buffer.readScalar();
}
-SkFlattenable::Factory SkDownSampleImageFilter::getFactory() {
- return CreateProc;
-}
-
SK_DEFINE_FLATTENABLE_REGISTRAR(SkOffsetImageFilter)
SK_DEFINE_FLATTENABLE_REGISTRAR(SkComposeImageFilter)
SK_DEFINE_FLATTENABLE_REGISTRAR(SkMergeImageFilter)
diff --git a/src/effects/SkTransparentShader.cpp b/src/effects/SkTransparentShader.cpp
index 486fc89..c827c11 100644
--- a/src/effects/SkTransparentShader.cpp
+++ b/src/effects/SkTransparentShader.cpp
@@ -126,10 +126,6 @@
}
}
-SkFlattenable::Factory SkTransparentShader::getFactory() {
- return Create;
-}
-
void SkTransparentShader::flatten(SkFlattenableWriteBuffer& buffer) {
this->INHERITED::flatten(buffer);
}
diff --git a/src/utils/SkUnitMappers.cpp b/src/utils/SkUnitMappers.cpp
index 583d091..dd23880 100644
--- a/src/utils/SkUnitMappers.cpp
+++ b/src/utils/SkUnitMappers.cpp
@@ -33,14 +33,6 @@
fScale = rb.readU32();
}
-SkFlattenable::Factory SkDiscreteMapper::getFactory() {
- return Create;
-}
-
-SkFlattenable* SkDiscreteMapper::Create(SkFlattenableReadBuffer& rb) {
- return SkNEW_ARGS(SkDiscreteMapper, (rb));
-}
-
void SkDiscreteMapper::flatten(SkFlattenableWriteBuffer& wb) {
this->INHERITED::flatten(wb);
@@ -65,11 +57,3 @@
SkCosineMapper::SkCosineMapper(SkFlattenableReadBuffer& rb)
: SkUnitMapper(rb) {}
-SkFlattenable::Factory SkCosineMapper::getFactory() {
- return Create;
-}
-
-SkFlattenable* SkCosineMapper::Create(SkFlattenableReadBuffer& rb) {
- return SkNEW_ARGS(SkCosineMapper, (rb));
-}
-