19 #ifndef MIR_GRAPHICS_DISPLAY_H_
20 #define MIR_GRAPHICS_DISPLAY_H_
32 class DisplayConfiguration;
56 virtual std::unique_ptr<DisplayConfiguration>
configuration()
const = 0;
74 DisplayConfigurationChangeHandler
const& conf_change_handler) = 0;
84 DisplayPauseHandler
const& pause_handler,
85 DisplayResumeHandler
const& resume_handler) = 0;
93 virtual void pause() = 0;
103 virtual std::shared_ptr<Cursor>
create_hardware_cursor(std::shared_ptr<CursorImage>
const& initial_image) = 0;
virtual void for_each_display_buffer(std::function< void(DisplayBuffer &)> const &f)=0
Executes a functor for each output framebuffer.
virtual void pause()=0
Pauses the display.
All things Mir.
Definition: aging_buffer.h:24
virtual void resume()=0
Resumes the display.
virtual ~Display()
Definition: display.h:115
Interface to an output framebuffer.
Definition: display_buffer.h:38
virtual void register_configuration_change_handler(EventHandlerRegister &handlers, DisplayConfigurationChangeHandler const &conf_change_handler)=0
Registers a handler for display configuration changes.
virtual std::unique_ptr< DisplayConfiguration > configuration() const =0
Gets a copy of the current output configuration.
virtual void configure(DisplayConfiguration const &conf)=0
Sets a new output configuration.
std::function< bool()> DisplayResumeHandler
Definition: display.h:39
virtual void register_pause_resume_handlers(EventHandlerRegister &handlers, DisplayPauseHandler const &pause_handler, DisplayResumeHandler const &resume_handler)=0
Registers handlers for pausing and resuming the display subsystem.
std::function< bool()> DisplayPauseHandler
Definition: display.h:36
virtual std::shared_ptr< Cursor > create_hardware_cursor(std::shared_ptr< CursorImage > const &initial_image)=0
Create a hardware cursor object.
Interface to the display subsystem.
Definition: display.h:45
std::function< void()> DisplayConfigurationChangeHandler
Definition: display.h:40
Interface to a configuration of display cards and outputs.
Definition: display_configuration.h:159
virtual std::unique_ptr< GLContext > create_gl_context()=0
Creates a GLContext object that shares resources with the Display's GL context.
Definition: event_handler_register.h:31