Thu, 15 Jan 2015 21:03:48 +0100
Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)
1 /*
2 * Copyright 2012 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 */
8 #ifndef GrPath_DEFINED
9 #define GrPath_DEFINED
11 #include "GrResource.h"
12 #include "GrResourceCache.h"
13 #include "SkPath.h"
14 #include "SkRect.h"
15 #include "SkStrokeRec.h"
17 class GrPath : public GrResource {
18 public:
19 SK_DECLARE_INST_COUNT(GrPath);
21 GrPath(GrGpu* gpu, bool isWrapped, const SkPath& skPath, const SkStrokeRec& stroke)
22 : INHERITED(gpu, isWrapped),
23 fSkPath(skPath),
24 fStroke(stroke),
25 fBounds(skPath.getBounds()) {
26 }
28 static GrResourceKey ComputeKey(const SkPath& path, const SkStrokeRec& stroke);
30 bool isEqualTo(const SkPath& path, const SkStrokeRec& stroke) {
31 return fSkPath == path && fStroke == stroke;
32 }
34 const SkRect& getBounds() const { return fBounds; }
36 const SkStrokeRec& getStroke() const { return fStroke; }
38 protected:
39 SkPath fSkPath;
40 SkStrokeRec fStroke;
41 SkRect fBounds;
43 private:
44 typedef GrResource INHERITED;
45 };
47 #endif