Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / third_party / skia / src / utils / SkGatherPixelRefsAndRects.cpp
1 /*
2  * Copyright 2014 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 #include "SkGatherPixelRefsAndRects.h"
9 #include "SkNoSaveLayerCanvas.h"
10 #include "SkPictureUtils.h"
11
12 void SkPictureUtils::GatherPixelRefsAndRects(SkPicture* pict,
13                                              SkPictureUtils::SkPixelRefContainer* prCont) {
14     if (pict->cullRect().isEmpty()) {
15         return ;
16     }
17
18     SkGatherPixelRefsAndRectsDevice device(SkScalarCeilToInt(pict->cullRect().width()), 
19                                            SkScalarCeilToInt(pict->cullRect().height()), 
20                                            prCont);
21     SkNoSaveLayerCanvas canvas(&device);
22
23     canvas.clipRect(pict->cullRect(), SkRegion::kIntersect_Op, false);
24     canvas.drawPicture(pict);
25 }