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

Side by Side Diff: cc/layers/layer.h

Issue 1783613004: CC Animation: Erase cc::LayerSettings everywhere. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@eraseandroid
Patch Set: Rebase. Created 4 years, 9 months 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 unified diff | Download patch
« no previous file with comments | « cc/layers/io_surface_layer.cc ('k') | cc/layers/layer.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2010 The Chromium Authors. All rights reserved. 1 // Copyright 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CC_LAYERS_LAYER_H_ 5 #ifndef CC_LAYERS_LAYER_H_
6 #define CC_LAYERS_LAYER_H_ 6 #define CC_LAYERS_LAYER_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
48 class ConvertableToTraceFormat; 48 class ConvertableToTraceFormat;
49 } 49 }
50 } 50 }
51 51
52 namespace cc { 52 namespace cc {
53 53
54 class CopyOutputRequest; 54 class CopyOutputRequest;
55 class LayerAnimationEventObserver; 55 class LayerAnimationEventObserver;
56 class LayerClient; 56 class LayerClient;
57 class LayerImpl; 57 class LayerImpl;
58 class LayerSettings;
59 class LayerTreeHost; 58 class LayerTreeHost;
60 class LayerTreeHostCommon; 59 class LayerTreeHostCommon;
61 class LayerTreeImpl; 60 class LayerTreeImpl;
62 class LayerTreeSettings; 61 class LayerTreeSettings;
63 class RenderingStatsInstrumentation; 62 class RenderingStatsInstrumentation;
64 class ResourceUpdateQueue; 63 class ResourceUpdateQueue;
65 class ScrollbarLayerInterface; 64 class ScrollbarLayerInterface;
66 class SimpleEnclosedRegion; 65 class SimpleEnclosedRegion;
67 66
68 namespace proto { 67 namespace proto {
69 class LayerNode; 68 class LayerNode;
70 class LayerProperties; 69 class LayerProperties;
71 class LayerUpdate; 70 class LayerUpdate;
72 } // namespace proto 71 } // namespace proto
73 72
74 // Base class for composited layers. Special layer types are derived from 73 // Base class for composited layers. Special layer types are derived from
75 // this class. 74 // this class.
76 class CC_EXPORT Layer : public base::RefCounted<Layer> { 75 class CC_EXPORT Layer : public base::RefCounted<Layer> {
77 public: 76 public:
78 using LayerListType = LayerList; 77 using LayerListType = LayerList;
79 using LayerIdMap = std::unordered_map<int, scoped_refptr<Layer>>; 78 using LayerIdMap = std::unordered_map<int, scoped_refptr<Layer>>;
80 79
81 enum LayerIdLabels { 80 enum LayerIdLabels {
82 INVALID_ID = -1, 81 INVALID_ID = -1,
83 }; 82 };
84 83
85 static scoped_refptr<Layer> Create(const LayerSettings& settings); 84 static scoped_refptr<Layer> Create();
86 85
87 int id() const { return layer_id_; } 86 int id() const { return layer_id_; }
88 87
89 Layer* RootLayer(); 88 Layer* RootLayer();
90 Layer* parent() { return parent_; } 89 Layer* parent() { return parent_; }
91 const Layer* parent() const { return parent_; } 90 const Layer* parent() const { return parent_; }
92 void AddChild(scoped_refptr<Layer> child); 91 void AddChild(scoped_refptr<Layer> child);
93 void InsertChild(scoped_refptr<Layer> child, size_t index); 92 void InsertChild(scoped_refptr<Layer> child, size_t index);
94 void ReplaceChild(Layer* reference, scoped_refptr<Layer> new_layer); 93 void ReplaceChild(Layer* reference, scoped_refptr<Layer> new_layer);
95 void RemoveFromParent(); 94 void RemoveFromParent();
(...skipping 431 matching lines...) Expand 10 before | Expand all | Expand 10 after
527 void OnOpacityAnimated(float opacity); 526 void OnOpacityAnimated(float opacity);
528 void OnTransformAnimated(const gfx::Transform& transform); 527 void OnTransformAnimated(const gfx::Transform& transform);
529 void OnScrollOffsetAnimated(const gfx::ScrollOffset& scroll_offset); 528 void OnScrollOffsetAnimated(const gfx::ScrollOffset& scroll_offset);
530 void OnTransformIsPotentiallyAnimatingChanged(bool is_animating); 529 void OnTransformIsPotentiallyAnimatingChanged(bool is_animating);
531 bool IsActive() const; 530 bool IsActive() const;
532 531
533 protected: 532 protected:
534 friend class LayerImpl; 533 friend class LayerImpl;
535 friend class TreeSynchronizer; 534 friend class TreeSynchronizer;
536 virtual ~Layer(); 535 virtual ~Layer();
537 536 Layer();
538 explicit Layer(const LayerSettings& settings);
539 537
540 // These SetNeeds functions are in order of severity of update: 538 // These SetNeeds functions are in order of severity of update:
541 // 539 //
542 // Called when this layer has been modified in some way, but isn't sure 540 // Called when this layer has been modified in some way, but isn't sure
543 // that it needs a commit yet. It needs CalcDrawProperties and UpdateLayers 541 // that it needs a commit yet. It needs CalcDrawProperties and UpdateLayers
544 // before it knows whether or not a commit is required. 542 // before it knows whether or not a commit is required.
545 void SetNeedsUpdate(); 543 void SetNeedsUpdate();
546 // Called when a property has been modified in a way that the layer 544 // Called when a property has been modified in a way that the layer
547 // knows immediately that a commit is required. This implies SetNeedsUpdate 545 // knows immediately that a commit is required. This implies SetNeedsUpdate
548 // as well as SetNeedsPushProperties to push that property. 546 // as well as SetNeedsPushProperties to push that property.
(...skipping 189 matching lines...) Expand 10 before | Expand all | Expand 10 after
738 736
739 std::vector<FrameTimingRequest> frame_timing_requests_; 737 std::vector<FrameTimingRequest> frame_timing_requests_;
740 bool frame_timing_requests_dirty_; 738 bool frame_timing_requests_dirty_;
741 739
742 DISALLOW_COPY_AND_ASSIGN(Layer); 740 DISALLOW_COPY_AND_ASSIGN(Layer);
743 }; 741 };
744 742
745 } // namespace cc 743 } // namespace cc
746 744
747 #endif // CC_LAYERS_LAYER_H_ 745 #endif // CC_LAYERS_LAYER_H_
OLDNEW
« no previous file with comments | « cc/layers/io_surface_layer.cc ('k') | cc/layers/layer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698