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 14 namespace cc { 15 16 class CC_EXPORT HeadsUpDisplayLayer : public ContentsScalingLayer { 17 public: 18 static scoped_refptr<HeadsUpDisplayLayer> Create(); 19 20 void PrepareForCalculateDrawProperties( 21 gfx::Size device_viewport, float device_scale_factor); 22 23 virtual bool DrawsContent() const OVERRIDE; 24 25 virtual scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl) 26 OVERRIDE; 27 28 virtual std::string DebugName() OVERRIDE; 29 30 protected: 31 HeadsUpDisplayLayer(); 32 33 private: 34 virtual ~HeadsUpDisplayLayer(); 35 36 DISALLOW_COPY_AND_ASSIGN(HeadsUpDisplayLayer); 37 }; 38 39 } // namespace cc 40 41 #endif // CC_LAYERS_HEADS_UP_DISPLAY_LAYER_H_ 42