gfx/skia/trunk/src/core/SkScanPriv.h

branch
TOR_BUG_3246
changeset 7
129ffea94266
equal deleted inserted replaced
-1:000000000000 0:6800b92a6c07
1
2 /*
3 * Copyright 2006 The Android Open Source Project
4 *
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
7 */
8
9
10 #ifndef SkScanPriv_DEFINED
11 #define SkScanPriv_DEFINED
12
13 #include "SkScan.h"
14 #include "SkBlitter.h"
15
16 class SkScanClipper {
17 public:
18 SkScanClipper(SkBlitter* blitter, const SkRegion* clip, const SkIRect& bounds,
19 bool skipRejectTest = false);
20
21 SkBlitter* getBlitter() const { return fBlitter; }
22 const SkIRect* getClipRect() const { return fClipRect; }
23
24 private:
25 SkRectClipBlitter fRectBlitter;
26 SkRgnClipBlitter fRgnBlitter;
27 SkBlitter* fBlitter;
28 const SkIRect* fClipRect;
29 };
30
31 // clipRect == null means path is entirely inside the clip
32 void sk_fill_path(const SkPath& path, const SkIRect* clipRect,
33 SkBlitter* blitter, int start_y, int stop_y, int shiftEdgesUp,
34 const SkRegion& clipRgn);
35
36 // blit the rects above and below avoid, clipped to clip
37 void sk_blit_above(SkBlitter*, const SkIRect& avoid, const SkRegion& clip);
38 void sk_blit_below(SkBlitter*, const SkIRect& avoid, const SkRegion& clip);
39
40 #endif

mercurial