fd03d4a829
And remove the typedef in GrRect.h. The same with GrIRect. R=robertphillips@google.com Author: tfarina@chromium.org Review URL: https://chromiumcodereview.appspot.com/19449002 git-svn-id: http://skia.googlecode.com/svn/trunk@10130 2bbb7eff-a529-9590-31e7-b0007b416f81
56 lines
1.4 KiB
C++
56 lines
1.4 KiB
C++
/*
|
|
* 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"
|
|
|
|
class GrContext;
|
|
class GrDrawTarget;
|
|
class GrPaint;
|
|
struct SkRect;
|
|
class SkStrokeRec;
|
|
|
|
/*
|
|
* This class wraps helper functions that draw ovals and roundrects (filled & stroked)
|
|
*/
|
|
class GrOvalRenderer : public GrRefCnt {
|
|
public:
|
|
SK_DECLARE_INST_COUNT(GrOvalRenderer)
|
|
|
|
GrOvalRenderer() : fRRectIndexBuffer(NULL) {}
|
|
~GrOvalRenderer() {
|
|
this->reset();
|
|
}
|
|
|
|
void reset();
|
|
|
|
bool drawOval(GrDrawTarget* target, const GrContext* context, bool useAA,
|
|
const SkRect& oval, const SkStrokeRec& stroke);
|
|
bool drawSimpleRRect(GrDrawTarget* target, GrContext* context, bool useAA,
|
|
const SkRRect& rrect, const SkStrokeRec& stroke);
|
|
|
|
private:
|
|
bool drawEllipse(GrDrawTarget* target, bool useAA,
|
|
const SkRect& ellipse,
|
|
const SkStrokeRec& stroke);
|
|
void drawCircle(GrDrawTarget* target, bool useAA,
|
|
const SkRect& circle,
|
|
const SkStrokeRec& stroke);
|
|
|
|
GrIndexBuffer* rRectIndexBuffer(GrGpu* gpu);
|
|
|
|
GrIndexBuffer* fRRectIndexBuffer;
|
|
|
|
typedef GrRefCnt INHERITED;
|
|
};
|
|
|
|
#endif // GrOvalRenderer_DEFINED
|