Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(222)

Unified Diff: cc/playback/filter_display_item.h

Issue 1494223003: cc: Shrink size of display item (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Make SetNew private Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/playback/filter_display_item.h
diff --git a/cc/playback/filter_display_item.h b/cc/playback/filter_display_item.h
index 94bad210734dab7f810ccf9290d49f1fe9c07fcb..31083c259929875ed36e7c6c61c168d34be26bde 100644
--- a/cc/playback/filter_display_item.h
+++ b/cc/playback/filter_display_item.h
@@ -17,11 +17,10 @@ namespace cc {
class CC_EXPORT FilterDisplayItem : public DisplayItem {
public:
- FilterDisplayItem();
+ FilterDisplayItem(const FilterOperations& filters, const gfx::RectF& bounds);
+ explicit FilterDisplayItem(const proto::DisplayItem& proto);
~FilterDisplayItem() override;
- void SetNew(const FilterOperations& filters, const gfx::RectF& bounds);
-
void ToProtobuf(proto::DisplayItem* proto) const override;
void FromProtobuf(const proto::DisplayItem& proto) override;
void Raster(SkCanvas* canvas,
@@ -29,8 +28,14 @@ class CC_EXPORT FilterDisplayItem : public DisplayItem {
SkPicture::AbortCallback* callback) const override;
void AsValueInto(const gfx::Rect& visual_rect,
base::trace_event::TracedValue* array) const override;
+ size_t ExternalMemoryUsage() const override;
+
+ int ApproximateOpCount() const { return 1; }
+ bool IsSuitableForGpuRasterization() const { return true; }
private:
+ void SetNew(const FilterOperations& filters, const gfx::RectF& bounds);
+
FilterOperations filters_;
gfx::RectF bounds_;
};
@@ -38,6 +43,7 @@ class CC_EXPORT FilterDisplayItem : public DisplayItem {
class CC_EXPORT EndFilterDisplayItem : public DisplayItem {
public:
EndFilterDisplayItem();
+ explicit EndFilterDisplayItem(const proto::DisplayItem& proto);
~EndFilterDisplayItem() override;
static scoped_ptr<EndFilterDisplayItem> Create() {
@@ -51,6 +57,10 @@ class CC_EXPORT EndFilterDisplayItem : public DisplayItem {
SkPicture::AbortCallback* callback) const override;
void AsValueInto(const gfx::Rect& visual_rect,
base::trace_event::TracedValue* array) const override;
+ size_t ExternalMemoryUsage() const override;
+
+ int ApproximateOpCount() const { return 0; }
+ bool IsSuitableForGpuRasterization() const { return true; }
};
} // namespace cc

Powered by Google App Engine
This is Rietveld 408576698