1// Copyright 2012 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_HEADS_UP_DISPLAY_LAYER_H_
6#define CC_LAYERS_HEADS_UP_DISPLAY_LAYER_H_
7
8#include <string>
9
10#include "base/memory/scoped_ptr.h"
11#include "cc/base/cc_export.h"
12#include "cc/layers/contents_scaling_layer.h"
13
14namespace cc {
15
16class CC_EXPORT HeadsUpDisplayLayer : public ContentsScalingLayer {
17 public:
18  static scoped_refptr<HeadsUpDisplayLayer> Create();
19
20  void PrepareForCalculateDrawProperties(
21      const gfx::Size& device_viewport, float device_scale_factor);
22
23
24  virtual scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl)
25      OVERRIDE;
26
27 protected:
28  HeadsUpDisplayLayer();
29  virtual bool HasDrawableContent() const OVERRIDE;
30
31 private:
32  virtual ~HeadsUpDisplayLayer();
33
34  DISALLOW_COPY_AND_ASSIGN(HeadsUpDisplayLayer);
35};
36
37}  // namespace cc
38
39#endif  // CC_LAYERS_HEADS_UP_DISPLAY_LAYER_H_
40