Added Inst counting to SkFlattenable-derived classes

http://codereview.appspot.com/6355043/



git-svn-id: http://skia.googlecode.com/svn/trunk@4359 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/core/SkColorFilter.cpp b/src/core/SkColorFilter.cpp
index b96b77e..74e1db1 100644
--- a/src/core/SkColorFilter.cpp
+++ b/src/core/SkColorFilter.cpp
@@ -11,6 +11,8 @@
 #include "SkShader.h"
 #include "SkUnPreMultiply.h"
 
+SK_DEFINE_INST_COUNT(SkColorFilter)
+
 bool SkColorFilter::asColorMode(SkColor* color, SkXfermode::Mode* mode) {
     return false;
 }
diff --git a/src/core/SkColorTable.cpp b/src/core/SkColorTable.cpp
index 3797fbd..3711de5 100644
--- a/src/core/SkColorTable.cpp
+++ b/src/core/SkColorTable.cpp
@@ -11,6 +11,8 @@
 #include "SkStream.h"
 #include "SkTemplates.h"
 
+SK_DEFINE_INST_COUNT(SkColorTable)
+
 SkColorTable::SkColorTable(int count)
     : f16BitCache(NULL), fFlags(0)
 {
diff --git a/src/core/SkMaskFilter.cpp b/src/core/SkMaskFilter.cpp
index 75e38ce..96e14a1 100644
--- a/src/core/SkMaskFilter.cpp
+++ b/src/core/SkMaskFilter.cpp
@@ -14,6 +14,8 @@
 #include "SkDraw.h"
 #include "SkRasterClip.h"
 
+SK_DEFINE_INST_COUNT(SkMaskFilter)
+
 bool SkMaskFilter::filterMask(SkMask*, const SkMask&, const SkMatrix&,
                               SkIPoint*) {
     return false;
diff --git a/src/core/SkPaint.cpp b/src/core/SkPaint.cpp
index 8ed1ce6..cba7930 100644
--- a/src/core/SkPaint.cpp
+++ b/src/core/SkPaint.cpp
@@ -2159,6 +2159,8 @@
 
 //////////// Move these to their own file soon.
 
+SK_DEFINE_INST_COUNT(SkImageFilter)
+
 bool SkImageFilter::filterImage(Proxy* proxy, const SkBitmap& src,
                                 const SkMatrix& ctm,
                                 SkBitmap* result, SkIPoint* loc) {
@@ -2205,6 +2207,8 @@
 
 //////
 
+SK_DEFINE_INST_COUNT(SkDrawLooper)
+
 bool SkDrawLooper::canComputeFastBounds(const SkPaint& paint) {
     SkCanvas canvas;
 
diff --git a/src/core/SkPathEffect.cpp b/src/core/SkPathEffect.cpp
index 6b95d9b..8708e7e 100644
--- a/src/core/SkPathEffect.cpp
+++ b/src/core/SkPathEffect.cpp
@@ -110,6 +110,8 @@
 
 ///////////////////////////////////////////////////////////////////////////////
 
+SK_DEFINE_INST_COUNT(SkPathEffect)
+
 void SkPathEffect::computeFastBounds(SkRect* dst, const SkRect& src) {
     *dst = src;
 }
diff --git a/src/core/SkPixelRef.cpp b/src/core/SkPixelRef.cpp
index 1317829..96c991c 100644
--- a/src/core/SkPixelRef.cpp
+++ b/src/core/SkPixelRef.cpp
@@ -9,6 +9,8 @@
 #include "SkFlattenable.h"
 #include "SkThread.h"
 
+SK_DEFINE_INST_COUNT(SkPixelRef)
+
 // must be a power-of-2. undef to just use 1 mutex
 #define PIXELREF_MUTEX_RING_COUNT       32
 
diff --git a/src/core/SkRasterizer.cpp b/src/core/SkRasterizer.cpp
index 0a0a959..e5625bf 100644
--- a/src/core/SkRasterizer.cpp
+++ b/src/core/SkRasterizer.cpp
@@ -12,6 +12,8 @@
 #include "SkMaskFilter.h"
 #include "SkPath.h"
 
+SK_DEFINE_INST_COUNT(SkRasterizer)
+
 bool SkRasterizer::rasterize(const SkPath& fillPath, const SkMatrix& matrix,
                              const SkIRect* clipBounds, SkMaskFilter* filter,
                              SkMask* mask, SkMask::CreateMode mode) {
diff --git a/src/core/SkShader.cpp b/src/core/SkShader.cpp
index 6953612..cd40b7f 100644
--- a/src/core/SkShader.cpp
+++ b/src/core/SkShader.cpp
@@ -12,6 +12,8 @@
 #include "SkPaint.h"
 #include "SkMallocPixelRef.h"
 
+SK_DEFINE_INST_COUNT(SkShader)
+
 SkShader::SkShader() : fLocalMatrix(NULL) {
     SkDEBUGCODE(fInSession = false;)
 }
diff --git a/src/core/SkShape.cpp b/src/core/SkShape.cpp
index c386af8..146e74c 100644
--- a/src/core/SkShape.cpp
+++ b/src/core/SkShape.cpp
@@ -9,6 +9,8 @@
 #include "SkShape.h"
 #include "SkMatrix.h"
 
+SK_DEFINE_INST_COUNT(SkShape)
+
 #if 0
 static int gShapeCounter;
 static void inc_shape(const SkShape* s) {
diff --git a/src/core/SkXfermode.cpp b/src/core/SkXfermode.cpp
index bb9dc79..03f996a 100644
--- a/src/core/SkXfermode.cpp
+++ b/src/core/SkXfermode.cpp
@@ -10,6 +10,8 @@
 #include "SkXfermode.h"
 #include "SkColorPriv.h"
 
+SK_DEFINE_INST_COUNT(SkXfermode)
+
 #define SkAlphaMulAlpha(a, b)   SkMulDiv255Round(a, b)
 
 #if 0
diff --git a/src/effects/SkLayerDrawLooper.cpp b/src/effects/SkLayerDrawLooper.cpp
index 250306c..3a2685c 100644
--- a/src/effects/SkLayerDrawLooper.cpp
+++ b/src/effects/SkLayerDrawLooper.cpp
@@ -11,6 +11,8 @@
 #include "SkPaint.h"
 #include "SkUnPreMultiply.h"
 
+SK_DEFINE_INST_COUNT(SkLayerDrawLooper)
+
 SkLayerDrawLooper::LayerInfo::LayerInfo() {
     fFlagsMask = 0;                     // ignore our paint flags
     fPaintBits = 0;                     // ignore our paint fields
diff --git a/src/effects/SkLightingImageFilter.cpp b/src/effects/SkLightingImageFilter.cpp
index 84cb291..25c92b7 100644
--- a/src/effects/SkLightingImageFilter.cpp
+++ b/src/effects/SkLightingImageFilter.cpp
@@ -271,6 +271,8 @@
 
 class SkLight : public SkFlattenable {
 public:
+    SK_DECLARE_INST_COUNT(SkLight)
+
     enum LightType {
         kDistant_LightType,
         kPoint_LightType,
@@ -289,6 +291,8 @@
     typedef SkFlattenable INHERITED;
 };
 
+SK_DEFINE_INST_COUNT(SkLight)
+
 class SkDistantLight : public SkLight {
 public:
     SkDistantLight(const SkPoint3& direction) : fDirection(direction) {
diff --git a/src/utils/SkUnitMappers.cpp b/src/utils/SkUnitMappers.cpp
index 929447e..b2ab02b 100644
--- a/src/utils/SkUnitMappers.cpp
+++ b/src/utils/SkUnitMappers.cpp
@@ -7,6 +7,8 @@
  */
 #include "SkUnitMappers.h"
 
+SK_DEFINE_INST_COUNT(SkUnitMapper)
+
 SkDiscreteMapper::SkDiscreteMapper(int segments) {
     if (segments < 2) {
         fSegments = 0;