make OpenCL optional for skpdiff

- add CPU based different pixels metric

R=djsollen@google.com

Review URL: https://codereview.chromium.org/19374006

git-svn-id: http://skia.googlecode.com/svn/trunk@10127 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/experimental/skpdiff/SkCLImageDiffer.h b/experimental/skpdiff/SkCLImageDiffer.h
index 6509392..50cf389 100644
--- a/experimental/skpdiff/SkCLImageDiffer.h
+++ b/experimental/skpdiff/SkCLImageDiffer.h
@@ -22,6 +22,8 @@
 public:
     SkCLImageDiffer();
 
+    virtual bool requiresOpenCL() SK_OVERRIDE { return true; }
+
     /**
      * Initializes the OpenCL resources this differ needs to work
      * @param  device  An OpenCL device
@@ -85,30 +87,4 @@
     typedef SkImageDiffer INHERITED;
 };
 
-/**
- * A OpenCL differ that measures the percentage of different corresponding pixels. If the two images
- * are not the same size or have no pixels, the result will always be zero.
- */
-class SkDifferentPixelsImageDiffer : public SkCLImageDiffer {
-public:
-    virtual const char* getName() SK_OVERRIDE;
-    virtual int queueDiff(SkBitmap* baseline, SkBitmap* test) SK_OVERRIDE;
-    virtual void deleteDiff(int id) SK_OVERRIDE;
-    virtual bool isFinished(int id) SK_OVERRIDE;
-    virtual double getResult(int id) SK_OVERRIDE;
-    virtual int getPointsOfInterestCount(int id) SK_OVERRIDE;
-    virtual SkIPoint* getPointsOfInterest(int id) SK_OVERRIDE;
-
-protected:
-    virtual bool onInit() SK_OVERRIDE;
-
-private:
-    struct QueuedDiff;
-
-    SkTDArray<QueuedDiff> fQueuedDiffs;
-    cl_kernel fKernel;
-
-    typedef SkCLImageDiffer INHERITED;
-};
-
 #endif