| // Copyright 2016 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. |
| |
| #include "cc/test/push_properties_counting_layer_impl.h" |
| |
| namespace cc { |
| |
| // static |
| std::unique_ptr<PushPropertiesCountingLayerImpl> |
| PushPropertiesCountingLayerImpl::Create(LayerTreeImpl* tree_impl, int id) { |
| return base::WrapUnique(new PushPropertiesCountingLayerImpl(tree_impl, id)); |
| } |
| |
| PushPropertiesCountingLayerImpl::PushPropertiesCountingLayerImpl( |
| LayerTreeImpl* tree_impl, |
| int id) |
| : LayerImpl(tree_impl, id), push_properties_count_(0) {} |
| |
| PushPropertiesCountingLayerImpl::~PushPropertiesCountingLayerImpl() = default; |
| |
| void PushPropertiesCountingLayerImpl::PushPropertiesTo(LayerImpl* layer) { |
| LayerImpl::PushPropertiesTo(layer); |
| push_properties_count_++; |
| // Push state to the active tree because we can only access it from there. |
| static_cast<PushPropertiesCountingLayerImpl*>(layer)->push_properties_count_ = |
| push_properties_count_; |
| } |
| |
| std::unique_ptr<LayerImpl> PushPropertiesCountingLayerImpl::CreateLayerImpl( |
| LayerTreeImpl* tree_impl) { |
| return PushPropertiesCountingLayerImpl::Create(tree_impl, LayerImpl::id()); |
| } |
| |
| } // namespace cc |