1// Copyright 2014 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.
4
5#ifndef CC_LAYERS_LAYER_UTILS_H_
6#define CC_LAYERS_LAYER_UTILS_H_
7
8#include "cc/base/cc_export.h"
9
10namespace gfx {
11  class BoxF;
12}  // namespace gfx
13
14namespace cc {
15  class LayerImpl;
16
17  class CC_EXPORT LayerUtils {
18   public:
19    // Computes a box in screen space that should entirely contain the layer's
20    // bounds through the entirety of the layer's current animation. Returns
21    // true and sets |out| to the inflation if there are animations that can
22    // inflate bounds in the path to the root layer and that it was able to
23    // inflate correctly. Returns false otherwise.
24    static bool GetAnimationBounds(const LayerImpl& layer, gfx::BoxF* out);
25  };
26
27}  // namespace cc
28
29#endif  // CC_LAYERS_LAYER_UTILS_H_
30