Landing Recent QUIC changes until 8/19/2015 17:00 UTC.
[chromium-blink-merge.git] / cc / trees / mutator_host_client.h
blob93f8f1334d8bc7e3efc7782b157f00648fed9321
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CC_TREES_MUTATOR_HOST_CLIENT_H_
6 #define CC_TREES_MUTATOR_HOST_CLIENT_H_
8 namespace gfx {
9 class Transform;
10 class ScrollOffset;
13 namespace cc {
15 class FilterOperations;
16 class Layer;
18 enum class LayerTreeType { ACTIVE, PENDING };
20 class MutatorHostClient {
21 public:
22 virtual bool IsLayerInTree(int layer_id, LayerTreeType tree_type) const = 0;
23 virtual void SetMutatorsNeedCommit() = 0;
25 virtual void SetLayerFilterMutated(int layer_id,
26 LayerTreeType tree_type,
27 const FilterOperations& filters) = 0;
28 virtual void SetLayerOpacityMutated(int layer_id,
29 LayerTreeType tree_type,
30 float opacity) = 0;
31 virtual void SetLayerTransformMutated(int layer_id,
32 LayerTreeType tree_type,
33 const gfx::Transform& transform) = 0;
34 virtual void SetLayerScrollOffsetMutated(
35 int layer_id,
36 LayerTreeType tree_type,
37 const gfx::ScrollOffset& scroll_offset) = 0;
39 virtual void LayerTransformIsPotentiallyAnimatingChanged(
40 int layer_id,
41 LayerTreeType tree_type,
42 bool is_animating) = 0;
44 virtual void ScrollOffsetAnimationFinished() = 0;
45 virtual gfx::ScrollOffset GetScrollOffsetForAnimation(int layer_id) const = 0;
48 } // namespace cc
50 #endif // CC_TREES_MUTATOR_HOST_CLIENT_H_