19 #ifndef MIR_GRAPHICS_NESTED_NESTED_DISPLAY_H_
20 #define MIR_GRAPHICS_NESTED_NESTED_DISPLAY_H_
32 #include <unordered_map>
36 namespace input {
class EventFilter; }
54 explicit EGLSurfaceHandle(EGLDisplay display, EGLNativeWindowType native_window, EGLConfig cfg);
57 operator EGLSurface()
const {
return egl_surface; }
60 EGLDisplay
const egl_display;
61 EGLSurface
const egl_surface;
74 operator EGLDisplay()
const {
return egl_display; }
77 EGLDisplay egl_display;
78 EGLContext egl_context_;
96 std::shared_ptr<HostConnection>
const& connection,
97 std::shared_ptr<input::EventFilter>
const& event_handler,
98 std::shared_ptr<DisplayReport>
const& display_report);
104 std::shared_ptr<DisplayConfiguration>
configuration()
override;
116 void pause()
override;
123 std::shared_ptr<HostConnection>
const connection;
124 std::shared_ptr<input::EventFilter>
const event_handler;
125 std::shared_ptr<DisplayReport>
const display_report;
129 std::mutex outputs_mutex;
130 std::unordered_map<DisplayConfigurationOutputId, std::shared_ptr<detail::NestedOutput>> outputs;
138 #endif // MIR_GRAPHICS_NESTED_NESTED_DISPLAY_H_