summaryrefslogtreecommitdiffstats
path: root/cc/tile.h
diff options
context:
space:
mode:
authornduca@chromium.org <nduca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-08 22:42:34 +0000
committernduca@chromium.org <nduca@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-08 22:42:34 +0000
commit18134fc48b55833ff91d72ddb459cf19bc607a9f (patch)
tree45e7b4aa9b6bbd979371a06a86b3fdb3dfed1cb5 /cc/tile.h
parent09af6658cc32b9821aaff07f24a6a2bb1af991fa (diff)
downloadchromium_src-18134fc48b55833ff91d72ddb459cf19bc607a9f.zip
chromium_src-18134fc48b55833ff91d72ddb459cf19bc607a9f.tar.gz
chromium_src-18134fc48b55833ff91d72ddb459cf19bc607a9f.tar.bz2
[cc] Tiles and tile manager for impl side painting
BUG=155209 R=enne@chromium.org Review URL: https://chromiumcodereview.appspot.com/11369130 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@166787 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/tile.h')
-rw-r--r--cc/tile.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/cc/tile.h b/cc/tile.h
new file mode 100644
index 0000000..fb57375
--- /dev/null
+++ b/cc/tile.h
@@ -0,0 +1,50 @@
+// Copyright 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CC_TILE_H_
+#define CC_TILE_H_
+
+#include "base/memory/ref_counted.h"
+#include "cc/picture_pile.h"
+#include "cc/resource_provider.h"
+#include "cc/tile_priority.h"
+#include "ui/gfx/rect.h"
+#include "ui/gfx/size.h"
+
+namespace cc {
+
+class TileManager;
+
+enum TileQuality {
+ LOW_TILE_QUALITY,
+ NORMAL_TILE_QUALITY
+};
+
+class Tile : public base::RefCounted<Tile> {
+ public:
+ Tile(TileManager* tile_manager,
+ gfx::Size tile_size,
+ gfx::Rect rect_inside_picture,
+ TileQuality quality);
+
+ void SetPicturePile(int frame_number, scoped_ptr<PicturePile> picture_pile) {}
+ void SetPriority(int frame_number, TilePriority) {}
+
+ bool IsDrawable(int frame_number) { return false; }
+ ResourceProvider::ResourceId GetDrawableResourceId(int frame_number) { return 0; }
+
+ private:
+ friend class base::RefCounted<Tile>;
+ friend class TileManager;
+
+ ~Tile();
+
+ TileManager* tile_manager_;
+ gfx::Rect tile_size_;
+ gfx::Rect rect_inside_picture_;
+ TileQuality quality_;
+};
+
+} // namespace cc
+#endif