• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2016 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 GrPathRenderingRenderTargetContext_DEFINED
9 #define GrPathRenderingRenderTargetContext_DEFINED
10 
11 #include "text/GrStencilAndCoverTextContext.h"
12 
13 class GrPathRenderingRenderTargetContext : public GrRenderTargetContext {
14 public:
15     void drawText(const GrClip&, const SkPaint&, const SkMatrix& viewMatrix, const char text[],
16                   size_t byteLength, SkScalar x, SkScalar y, const SkIRect& clipBounds) override;
17     void drawPosText(const GrClip&, const SkPaint&, const SkMatrix& viewMatrix, const char text[],
18                      size_t byteLength, const SkScalar pos[], int scalarsPerPosition,
19                      const SkPoint& offset, const SkIRect& clipBounds) override;
20     void drawTextBlob(const GrClip&, const SkPaint&,
21                       const SkMatrix& viewMatrix, const SkTextBlob*,
22                       SkScalar x, SkScalar y,
23                       SkDrawFilter*, const SkIRect& clipBounds) override;
24 protected:
GrPathRenderingRenderTargetContext(GrContext * ctx,GrDrawingManager * mgr,sk_sp<GrRenderTargetProxy> rtp,sk_sp<SkColorSpace> colorSpace,const SkSurfaceProps * surfaceProps,GrAuditTrail * at,GrSingleOwner * so)25     GrPathRenderingRenderTargetContext(GrContext* ctx, GrDrawingManager* mgr,
26                                        sk_sp<GrRenderTargetProxy> rtp,
27                                        sk_sp<SkColorSpace> colorSpace,
28                                        const SkSurfaceProps* surfaceProps, GrAuditTrail* at,
29                                        GrSingleOwner* so)
30         : INHERITED(ctx, mgr, std::move(rtp), std::move(colorSpace), surfaceProps, at, so) {}
31 
32 private:
33     std::unique_ptr<GrStencilAndCoverTextContext> fStencilAndCoverTextContext;
34 
35     friend class GrDrawingManager; // for ctor
36 
37     typedef GrRenderTargetContext INHERITED;
38 };
39 
40 #endif
41