Move clip mask generation into GrReducedClip

This is a temporary solution to facilitate window rectangles and make
clip mask generation more accessible for testing. The eventual goal is
to simplify clips and merge GrReducedClip into GrClipStackClip.

BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2263343002

Review-Url: https://codereview.chromium.org/2263343002
diff --git a/src/gpu/GrReducedClip.h b/src/gpu/GrReducedClip.h
index c3f94a0..731d58f 100644
--- a/src/gpu/GrReducedClip.h
+++ b/src/gpu/GrReducedClip.h
@@ -11,6 +11,9 @@
 #include "SkClipStack.h"
 #include "SkTLList.h"
 
+class GrContext;
+class GrDrawContext;
+
 /**
  * This class takes a clip stack and produces a reduced set of elements that are equivalent to
  * applying that full stack within a specified query rectangle.
@@ -60,6 +63,9 @@
 
     InitialState initialState() const { return fInitialState; }
 
+    bool drawAlphaClipMask(GrDrawContext*) const;
+    bool drawStencilClipMask(GrContext*, GrDrawContext*, const SkIPoint& clipOrigin) const;
+
 private:
     void walkStack(const SkClipStack&, const SkRect& queryBounds);
     bool intersectIBounds(const SkIRect&);