| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 [DartPackage="mojo_services"] | 5 [DartPackage="mojo_services"] |
| 6 module mojo.gfx.composition; | 6 module mojo.gfx.composition; |
| 7 | 7 |
| 8 import "mojo/services/geometry/interfaces/geometry.mojom"; | 8 import "mojo/services/geometry/interfaces/geometry.mojom"; |
| 9 import "mojo/services/gfx/composition/interfaces/hit_tests.mojom"; | 9 import "mojo/services/gfx/composition/interfaces/hit_tests.mojom"; |
| 10 import "mojo/services/gfx/composition/interfaces/scene_token.mojom"; | 10 import "mojo/services/gfx/composition/interfaces/scene_token.mojom"; |
| 11 | 11 |
| 12 // The renderer is a service which renders a scene graph to a display. | 12 // The renderer is a service which renders a scene graph to a display. |
| 13 // | 13 // |
| 14 // Use |Compositor.CreateRenderer()| to create a renderer. | 14 // Use |Compositor.CreateRenderer()| to create a renderer. |
| 15 interface Renderer { | 15 interface Renderer { |
| 16 // Sets the scene to be displayed by the renderer. | 16 // Sets the scene to be displayed by the renderer. |
| 17 // | 17 // |
| 18 // The |size| specifies the size of the output. | 18 // The |size| specifies the size of the output. |
| 19 // | 19 // |
| 20 // The |scene_token| specifies the scene which will be drawn as the | 20 // The |scene_token| specifies the scene which will be drawn as the |
| 21 // root of the scene graph. | 21 // root of the scene graph. |
| 22 // | 22 // |
| 23 // The |scene_version| specifies the version of the scene to render, | 23 // The |scene_version| specifies the version of the scene to render, |
| 24 // Use |kSceneVersionNone| to request the most recently published | 24 // Use |kSceneVersionNone| to request the most recently published |
| 25 // version of the scene if synchronization is unimportant. | 25 // version of the scene if synchronization is unimportant. |
| 26 // | 26 // |
| 27 // The |viewport| specifies the portion of the scene to render. | 27 // The |viewport| specifies the portion of the scene to render in pixels. |
| 28 // | 28 // |
| 29 // It is an error to create a renderer with an invalid |scene_token| | 29 // It is an error to create a renderer with an invalid |scene_token| |
| 30 // or |size|; the connection will be closed. | 30 // or |size|; the connection will be closed. |
| 31 // TODO: make this an event instead | 31 // TODO: make this an event instead |
| 32 SetRootScene(SceneToken scene_token, uint32 scene_version, | 32 SetRootScene(SceneToken scene_token, uint32 scene_version, |
| 33 mojo.Rect viewport); | 33 mojo.Rect viewport); |
| 34 | 34 |
| 35 // Dissociates the root scene from the renderer. | 35 // Dissociates the root scene from the renderer. |
| 36 ClearRootScene(); | 36 ClearRootScene(); |
| 37 | 37 |
| 38 // Provides an interface which can be used to perform hit tests on the | 38 // Provides an interface which can be used to perform hit tests on the |
| 39 // contents of the renderer's scene graph. | 39 // contents of the renderer's scene graph. |
| 40 GetHitTester(HitTester& hit_tester); | 40 GetHitTester(HitTester& hit_tester); |
| 41 }; | 41 }; |
| OLD | NEW |