fake_delegated_renderer_layer_impl.h revision 6e8cce623b6e4fe0c9e4af605d675dd9d0338c38
1// Copyright 2013 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_TEST_FAKE_DELEGATED_RENDERER_LAYER_IMPL_H_
6#define CC_TEST_FAKE_DELEGATED_RENDERER_LAYER_IMPL_H_
7
8#include "cc/layers/delegated_renderer_layer_impl.h"
9
10namespace cc {
11
12class FakeDelegatedRendererLayerImpl : public DelegatedRendererLayerImpl {
13 public:
14  static scoped_ptr<FakeDelegatedRendererLayerImpl> Create(
15      LayerTreeImpl* tree_impl, int id) {
16    return make_scoped_ptr(new FakeDelegatedRendererLayerImpl(tree_impl, id));
17  }
18  virtual ~FakeDelegatedRendererLayerImpl();
19
20  virtual scoped_ptr<LayerImpl> CreateLayerImpl(LayerTreeImpl* tree_impl)
21      OVERRIDE;
22
23  int ChildId() const { return ChildIdForTesting(); }
24  const RenderPassList& RenderPassesInDrawOrder() const {
25    return RenderPassesInDrawOrderForTesting();
26  }
27  ResourceProvider::ResourceIdSet Resources() const;
28
29  void SetFrameDataForRenderPasses(float device_scale_factor,
30                                   RenderPassList* pass_list);
31 protected:
32  FakeDelegatedRendererLayerImpl(LayerTreeImpl* tree_impl, int id);
33};
34
35}  // namespace cc
36
37#endif  // CC_TEST_FAKE_DELEGATED_RENDERER_LAYER_IMPL_H_
38