Home | History | Annotate | Download | only in utils
      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 }
     26