OLD | NEW |
| (Empty) |
1 // Copyright (c) 2011 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 // Define the interface for a generic simulation, and a factory method for | |
6 // instantiating different models. | |
7 | |
8 #ifndef GPU_TOOLS_COMPOSITOR_MODEL_BENCH_RENDER_MODELS_H_ | |
9 #define GPU_TOOLS_COMPOSITOR_MODEL_BENCH_RENDER_MODELS_H_ | |
10 | |
11 #include "gpu/tools/compositor_model_bench/render_tree.h" | |
12 | |
13 #include "base/basictypes.h" | |
14 #include "base/memory/scoped_ptr.h" | |
15 | |
16 enum RenderModel { | |
17 ForwardRenderModel | |
18 }; | |
19 | |
20 const char* ModelToString(RenderModel m); | |
21 | |
22 class RenderModelSimulator { | |
23 public: | |
24 virtual ~RenderModelSimulator(); | |
25 virtual void Update() = 0; | |
26 virtual void Resize(int width, int height) = 0; | |
27 | |
28 protected: | |
29 explicit RenderModelSimulator(RenderNode* root); | |
30 scoped_ptr<RenderNode> root_; | |
31 | |
32 private: | |
33 DISALLOW_IMPLICIT_CONSTRUCTORS(RenderModelSimulator); | |
34 }; | |
35 | |
36 RenderModelSimulator* ConstructSimulationModel(RenderModel model, | |
37 RenderNode* render_tree_root, | |
38 int window_width, | |
39 int window_height); | |
40 | |
41 #endif // GPU_TOOLS_COMPOSITOR_MODEL_BENCH_RENDER_MODELS_H_ | |
42 | |
OLD | NEW |