1/* 2 * Copyright 2015 Google Inc. 3 * 4 * Use of this source code is governed by a BSD-style license that can be 5 * found in the LICENSE file. 6 */ 7 8#ifndef GrTessellatingPathRenderer_DEFINED 9#define GrTessellatingPathRenderer_DEFINED 10 11#include "GrPathRenderer.h" 12 13/** 14 * Subclass that renders the path by converting to screen-space trapezoids plus 15 * extra 1-pixel geometry for AA. 16 */ 17class SK_API GrTessellatingPathRenderer : public GrPathRenderer { 18public: 19 GrTessellatingPathRenderer(); 20 21 bool canDrawPath(const GrDrawTarget*, 22 const GrPipelineBuilder*, 23 const SkMatrix&, 24 const SkPath&, 25 const GrStrokeInfo&, 26 bool antiAlias) const override; 27protected: 28 29 StencilSupport onGetStencilSupport(const GrDrawTarget*, 30 const GrPipelineBuilder*, 31 const SkPath&, 32 const GrStrokeInfo&) const override; 33 34 bool onDrawPath(GrDrawTarget*, 35 GrPipelineBuilder*, 36 GrColor, 37 const SkMatrix& viewMatrix, 38 const SkPath&, 39 const GrStrokeInfo&, 40 bool antiAlias) override; 41 42 typedef GrPathRenderer INHERITED; 43}; 44 45#endif 46