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.
5 #ifndef CC_LAYERS_SOLID_COLOR_LAYER_IMPL_H_
6 #define CC_LAYERS_SOLID_COLOR_LAYER_IMPL_H_
8 #include "base/memory/scoped_ptr.h"
9 #include "cc/base/cc_export.h"
10 #include "cc/layers/layer_impl.h"
14 class CC_EXPORT SolidColorLayerImpl
: public LayerImpl
{
16 static scoped_ptr
<SolidColorLayerImpl
> Create(LayerTreeImpl
* tree_impl
,
18 return make_scoped_ptr(new SolidColorLayerImpl(tree_impl
, id
));
21 static void AppendSolidQuads(
22 RenderPass
* render_pass
,
23 const OcclusionTracker
<LayerImpl
>& occlusion_tracker
,
24 SharedQuadState
* shared_quad_state
,
25 const gfx::Size
& content_bounds
,
26 const gfx::Transform
& target_space_transform
,
29 virtual ~SolidColorLayerImpl();
31 // LayerImpl overrides.
32 virtual scoped_ptr
<LayerImpl
> CreateLayerImpl(LayerTreeImpl
* tree_impl
)
34 virtual void AppendQuads(RenderPass
* render_pass
,
35 const OcclusionTracker
<LayerImpl
>& occlusion_tracker
,
36 AppendQuadsData
* append_quads_data
) OVERRIDE
;
39 SolidColorLayerImpl(LayerTreeImpl
* tree_impl
, int id
);
42 virtual const char* LayerTypeAsString() const OVERRIDE
;
44 DISALLOW_COPY_AND_ASSIGN(SolidColorLayerImpl
);
49 #endif // CC_LAYERS_SOLID_COLOR_LAYER_IMPL_H_