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 */ 7 8 #ifndef SkTileGridPicture_DEFINED 9 #define SkTileGridPicture_DEFINED 10 11 #include "SkPicture.h" 12 13 /** 14 * Subclass of SkPicture that override the behavior of the 15 * kOptimizeForClippedPlayback_RecordingFlag by creating an SkTileGrid 16 * structure rather than an R-Tree. The tile grid has lower recording 17 * and playback costs, but is less effective at eliminating extraneous 18 * primitives for arbitrary query rectangles. It is most effective for 19 * tiled playback when the tile structure is known at record time. 20 */ 21 class SK_API SkTileGridPicture : public SkPicture { 22 public: 23 SkTileGridPicture(int tileWidth, int tileHeight, int width, int height); 24 virtual SkBBoxHierarchy* createBBoxHierarchy() const SK_OVERRIDE; 25 private: 26 int fTileWidth, fTileHeight, fXTileCount, fYTileCount; 27 }; 28 29 #endif 30