Flutter Engine
The Flutter Engine
scene.h
Go to the documentation of this file.
1// Copyright 2013 The Flutter 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 FLUTTER_IMPELLER_SCENE_SCENE_H_
6#define FLUTTER_IMPELLER_SCENE_SCENE_H_
7
8#include <memory>
9
12#include "impeller/scene/node.h"
14
15namespace impeller {
16namespace scene {
17
18class Scene {
19 public:
20 Scene() = delete;
21
22 explicit Scene(std::shared_ptr<SceneContext> scene_context);
23
24 ~Scene();
25
26 Node& GetRoot();
27
28 bool Render(const RenderTarget& render_target,
29 const Matrix& camera_transform);
30
31 bool Render(const RenderTarget& render_target, const Camera& camera);
32
33 private:
34 std::shared_ptr<SceneContext> scene_context_;
35 Node root_;
36
37 Scene(const Scene&) = delete;
38
39 Scene& operator=(const Scene&) = delete;
40};
41
42} // namespace scene
43} // namespace impeller
44
45#endif // FLUTTER_IMPELLER_SCENE_SCENE_H_
bool Render(const RenderTarget &render_target, const Matrix &camera_transform)
Definition: scene.cc:34
Node & GetRoot()
Definition: scene.cc:30
A 4x4 matrix using column-major storage.
Definition: matrix.h:37