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(RenderPass
* render_pass
,
22 const Occlusion
& occlusion_in_content_space
,
23 SharedQuadState
* shared_quad_state
,
24 const gfx::Rect
& visible_content_rect
,
26 AppendQuadsData
* append_quads_data
);
28 ~SolidColorLayerImpl() override
;
30 // LayerImpl overrides.
31 scoped_ptr
<LayerImpl
> CreateLayerImpl(LayerTreeImpl
* tree_impl
) override
;
32 void AppendQuads(RenderPass
* render_pass
,
33 const Occlusion
& occlusion_in_content_space
,
34 AppendQuadsData
* append_quads_data
) override
;
37 SolidColorLayerImpl(LayerTreeImpl
* tree_impl
, int id
);
40 const char* LayerTypeAsString() const override
;
42 DISALLOW_COPY_AND_ASSIGN(SolidColorLayerImpl
);
47 #endif // CC_LAYERS_SOLID_COLOR_LAYER_IMPL_H_