remove getTotalClipAsPath, privatize getTotalClip

R=robertphillips@google.com, djsollen@google.com
TBR=robertphilips

Author: reed@google.com

Review URL: https://codereview.chromium.org/546493002
diff --git a/include/core/SkCanvas.h b/include/core/SkCanvas.h
index a619904..3043a3e 100644
--- a/include/core/SkCanvas.h
+++ b/include/core/SkCanvas.h
@@ -37,6 +37,12 @@
 class GrContext;
 class GrRenderTarget;
 
+class SkCanvasState;
+
+namespace SkCanvasStateUtils {
+    SkCanvasState* CaptureCanvasState(SkCanvas*);// needs gettotalclip()
+}
+
 /** \class SkCanvas
 
     A Canvas encapsulates all of the state about drawing into a device (bitmap).
@@ -1182,10 +1188,6 @@
     };
 
     // don't call
-    const SkRegion& internal_private_getTotalClip() const;
-    // don't call
-    void internal_private_getTotalClipAsPath(SkPath*) const;
-    // don't call
     GrRenderTarget* internal_private_accessTopLayerRenderTarget();
 
 protected:
@@ -1307,7 +1309,9 @@
     friend class SkDebugCanvas;     // needs experimental fAllowSimplifyClip
     friend class SkDeferredDevice;  // needs getTopDevice()
     friend class SkSurface_Raster;  // needs getDevice()
-
+    
+    friend SkCanvasState* SkCanvasStateUtils::CaptureCanvasState(SkCanvas*);// needs gettotalclip()
+    
     SkBaseDevice* createLayerDevice(const SkImageInfo&);
 
     SkBaseDevice* init(SkBaseDevice*);
@@ -1350,6 +1354,9 @@
                                     const char text[], size_t byteLength,
                                     SkScalar x, SkScalar y);
 
+    // only for canvasutils
+    const SkRegion& internal_private_getTotalClip() const;
+
     /*  These maintain a cache of the clip bounds in local coordinates,
         (converted to 2s-compliment if floats are slow).
      */
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index 2cc86e7..87cadf4 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -1682,16 +1682,6 @@
     return fMCRec->fRasterClip.forceGetBW();
 }
 
-void SkCanvas::internal_private_getTotalClipAsPath(SkPath* path) const {
-    path->reset();
-
-    const SkRegion& rgn = fMCRec->fRasterClip.forceGetBW();
-    if (rgn.isEmpty()) {
-        return;
-    }
-    (void)rgn.getBoundaryPath(path);
-}
-
 GrRenderTarget* SkCanvas::internal_private_accessTopLayerRenderTarget() {
     SkBaseDevice* dev = this->getTopDevice();
     return dev ? dev->accessRenderTarget() : NULL;