OLD | NEW |
1 // Copyright 2017 The Chromium Authors. All rights reserved. | 1 // Copyright 2017 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 #ifndef SERVICES_UI_SURFACES_DISPLAY_PROVIDER_H_ | 5 #ifndef COMPONENTS_VIZ_FRAME_SINKS_DISPLAY_PROVIDER_H_ |
6 #define SERVICES_UI_SURFACES_DISPLAY_PROVIDER_H_ | 6 #define COMPONENTS_VIZ_FRAME_SINKS_DISPLAY_PROVIDER_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
9 | 9 |
10 #include "gpu/ipc/common/surface_handle.h" | 10 #include "gpu/ipc/common/surface_handle.h" |
11 | 11 |
12 namespace cc { | 12 namespace cc { |
13 class BeginFrameSource; | 13 class BeginFrameSource; |
14 class Display; | 14 class Display; |
15 class FrameSinkId; | 15 class FrameSinkId; |
16 } | 16 } |
17 | 17 |
18 namespace ui { | 18 namespace viz { |
19 | 19 |
20 // Handles creating new cc::Displays and related classes for | 20 // Handles creating new cc::Displays and related classes for |
21 // MojoFrameSinkManager. | 21 // MojoFrameSinkManager. |
22 class DisplayProvider { | 22 class DisplayProvider { |
23 public: | 23 public: |
24 virtual ~DisplayProvider() {} | 24 virtual ~DisplayProvider() {} |
25 | 25 |
26 // Creates a new cc::Display for |surface_handle| with |frame_sink_id|. Will | 26 // Creates a new cc::Display for |surface_handle| with |frame_sink_id|. Will |
27 // also create cc::BeginFrameSource and return it in |begin_frame_source|. | 27 // also create cc::BeginFrameSource and return it in |begin_frame_source|. |
28 virtual std::unique_ptr<cc::Display> CreateDisplay( | 28 virtual std::unique_ptr<cc::Display> CreateDisplay( |
29 const cc::FrameSinkId& frame_sink_id, | 29 const cc::FrameSinkId& frame_sink_id, |
30 gpu::SurfaceHandle surface_handle, | 30 gpu::SurfaceHandle surface_handle, |
31 std::unique_ptr<cc::BeginFrameSource>* begin_frame_source) = 0; | 31 std::unique_ptr<cc::BeginFrameSource>* begin_frame_source) = 0; |
32 }; | 32 }; |
33 | 33 |
34 } // namespace ui | 34 } // namespace viz |
35 | 35 |
36 #endif // SERVICES_UI_SURFACES_DISPLAY_PROVIDER_H_ | 36 #endif // COMPONENTS_VIZ_FRAME_SINKS_DISPLAY_PROVIDER_H_ |
OLD | NEW |