19 #ifndef MIR_GRAPHICS_OFFSCREEN_DISPLAY_H_ 20 #define MIR_GRAPHICS_OFFSCREEN_DISPLAY_H_ 36 class DisplayConfigurationPolicy;
52 operator EGLDisplay()
const {
return egl_display; }
58 EGLDisplay egl_display;
65 void for_each_display_buffer(std::function<
void(
DisplayBuffer&)>
const&)
override;
67 std::chrono::milliseconds recommended_sleep()
const override;
69 std::unique_ptr<DisplayBuffer>
const output;
77 Display(EGLNativeDisplayType egl_native_display,
78 std::shared_ptr<DisplayConfigurationPolicy>
const& initial_conf_policy,
79 std::shared_ptr<DisplayReport>
const& listener);
82 void for_each_display_sync_group(std::function<
void(
DisplaySyncGroup&)>
const& f)
override;
84 std::unique_ptr<graphics::DisplayConfiguration> configuration()
const override;
87 void register_configuration_change_handler(
91 void register_pause_resume_handlers(
96 void pause()
override;
97 void resume()
override;
99 std::shared_ptr<Cursor> create_hardware_cursor(std::shared_ptr<CursorImage>
const& initial_image)
override;
100 std::unique_ptr<GLContext> create_gl_context()
override;
101 std::unique_ptr<VirtualOutput> create_virtual_output(
int width,
int height)
override;
106 mutable std::mutex configuration_mutex;
108 std::vector<std::unique_ptr<DisplaySyncGroup>> display_sync_groups;
All things Mir.
Definition: atomic_callback.h:25
DisplaySyncGroup represents a group of displays that need to be output in unison as a single post() c...
Definition: display.h:55
Definition: surfaceless_egl_context.h:32
std::function< bool()> DisplayResumeHandler
Definition: display.h:41
EGLDisplayHandle(EGLNativeDisplayType native_type)
Definition: display_buffer.h:60
unsigned int width
Definition: touchspot_image.c:4
std::function< bool()> DisplayPauseHandler
Definition: display.h:38
Definition: display_configuration.h:29
~EGLDisplayHandle() noexcept
unsigned int height
Definition: touchspot_image.c:5
Interface to the display subsystem.
Definition: display.h:88
std::function< void()> DisplayConfigurationChangeHandler
Definition: display.h:42
Interface to a configuration of display cards and outputs.
Definition: display_configuration.h:167
Definition: event_handler_register.h:32