Move oval rendering code to GrOvalRenderer.
Author: jvanverth@google.com
Reviewed By: bsalomon@google.com,robertphillips@google.com
Review URL: https://chromiumcodereview.appspot.com/12657003
git-svn-id: http://skia.googlecode.com/svn/trunk@8345 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/include/gpu/GrOvalRenderer.h b/include/gpu/GrOvalRenderer.h
new file mode 100644
index 0000000..bdc4861
--- /dev/null
+++ b/include/gpu/GrOvalRenderer.h
@@ -0,0 +1,46 @@
+/*
+ * Copyright 2013 Google Inc.
+ *
+ * Use of this source code is governed by a BSD-style license that can be
+ * found in the LICENSE file.
+ */
+
+
+#ifndef GrOvalRenderer_DEFINED
+#define GrOvalRenderer_DEFINED
+
+#include "GrContext.h"
+#include "GrPaint.h"
+#include "GrRefCnt.h"
+#include "GrRect.h"
+
+class GrContext;
+class GrDrawTarget;
+class GrPaint;
+class SkStrokeRec;
+
+/*
+ * This class wraps helper functions that draw ovals (filled & stroked)
+ */
+class GrOvalRenderer : public GrRefCnt {
+public:
+ SK_DECLARE_INST_COUNT(GrOvalRenderer)
+
+ GrOvalRenderer() {}
+
+ ~GrOvalRenderer() {}
+
+ bool drawOval(GrDrawTarget* target, const GrContext* context, const GrPaint& paint,
+ const GrRect& oval, const SkStrokeRec& stroke);
+private:
+ void drawEllipse(GrDrawTarget* target, const GrPaint& paint,
+ const GrRect& ellipse,
+ const SkStrokeRec& stroke);
+ void drawCircle(GrDrawTarget* target, const GrPaint& paint,
+ const GrRect& circle,
+ const SkStrokeRec& stroke);
+
+ typedef GrRefCnt INHERITED;
+};
+
+#endif // GrOvalRenderer_DEFINED