OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2011 The Android Open Source Project | 2 * Copyright 2011 The Android Open Source Project |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 | 8 |
9 #ifndef SkScan_DEFINED | 9 #ifndef SkScan_DEFINED |
10 #define SkScan_DEFINED | 10 #define SkScan_DEFINED |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
78 static void AntiFillXRect(const SkXRect&, const SkRegion*, SkBlitter*); | 78 static void AntiFillXRect(const SkXRect&, const SkRegion*, SkBlitter*); |
79 static void FillPath(const SkPath&, const SkRegion& clip, SkBlitter*); | 79 static void FillPath(const SkPath&, const SkRegion& clip, SkBlitter*); |
80 static void AntiFillPath(const SkPath&, const SkRegion& clip, SkBlitter*, | 80 static void AntiFillPath(const SkPath&, const SkRegion& clip, SkBlitter*, |
81 bool forceRLE = false); | 81 bool forceRLE = false); |
82 static void FillTriangle(const SkPoint pts[], const SkRegion*, SkBlitter*); | 82 static void FillTriangle(const SkPoint pts[], const SkRegion*, SkBlitter*); |
83 | 83 |
84 static void AntiFrameRect(const SkRect&, const SkPoint& strokeSize, | 84 static void AntiFrameRect(const SkRect&, const SkPoint& strokeSize, |
85 const SkRegion*, SkBlitter*); | 85 const SkRegion*, SkBlitter*); |
86 static void HairLineRgn(const SkPoint[], int count, const SkRegion*, SkBlitt
er*); | 86 static void HairLineRgn(const SkPoint[], int count, const SkRegion*, SkBlitt
er*); |
87 static void AntiHairLineRgn(const SkPoint[], int count, const SkRegion*, SkB
litter*); | 87 static void AntiHairLineRgn(const SkPoint[], int count, const SkRegion*, SkB
litter*); |
88 static void AAAFillPath(const SkPath& path, const SkRegion& origClip, SkBlit
ter* blitter); | 88 static void AAAFillPath(const SkPath& path, const SkRegion& origClip, SkBlit
ter* blitter, |
| 89 bool forceRLE = false); // SkAAClip uses forceRLE |
89 static void aaa_fill_path(const SkPath& path, const SkIRect* clipRect, Addit
iveBlitter*, | 90 static void aaa_fill_path(const SkPath& path, const SkIRect* clipRect, Addit
iveBlitter*, |
90 int start_y, int stop_y, const SkRegion& clipRgn, bool isUsin
gMask); | 91 int start_y, int stop_y, const SkRegion& clipRgn, bool isUsin
gMask, |
| 92 bool forceRLE); |
91 }; | 93 }; |
92 | 94 |
93 /** Assign an SkXRect from a SkIRect, by promoting the src rect's coordinates | 95 /** Assign an SkXRect from a SkIRect, by promoting the src rect's coordinates |
94 from int to SkFixed. Does not check for overflow if the src coordinates | 96 from int to SkFixed. Does not check for overflow if the src coordinates |
95 exceed 32K | 97 exceed 32K |
96 */ | 98 */ |
97 static inline void XRect_set(SkXRect* xr, const SkIRect& src) { | 99 static inline void XRect_set(SkXRect* xr, const SkIRect& src) { |
98 xr->fLeft = SkIntToFixed(src.fLeft); | 100 xr->fLeft = SkIntToFixed(src.fLeft); |
99 xr->fTop = SkIntToFixed(src.fTop); | 101 xr->fTop = SkIntToFixed(src.fTop); |
100 xr->fRight = SkIntToFixed(src.fRight); | 102 xr->fRight = SkIntToFixed(src.fRight); |
(...skipping 24 matching lines...) Expand all Loading... |
125 for right/bottom), and store the result in the SkIRect. | 127 for right/bottom), and store the result in the SkIRect. |
126 */ | 128 */ |
127 static inline void XRect_roundOut(const SkXRect& xr, SkIRect* dst) { | 129 static inline void XRect_roundOut(const SkXRect& xr, SkIRect* dst) { |
128 dst->fLeft = SkFixedFloorToInt(xr.fLeft); | 130 dst->fLeft = SkFixedFloorToInt(xr.fLeft); |
129 dst->fTop = SkFixedFloorToInt(xr.fTop); | 131 dst->fTop = SkFixedFloorToInt(xr.fTop); |
130 dst->fRight = SkFixedCeilToInt(xr.fRight); | 132 dst->fRight = SkFixedCeilToInt(xr.fRight); |
131 dst->fBottom = SkFixedCeilToInt(xr.fBottom); | 133 dst->fBottom = SkFixedCeilToInt(xr.fBottom); |
132 } | 134 } |
133 | 135 |
134 #endif | 136 #endif |
OLD | NEW |