19 #ifndef MIR_GRAPHICS_ANDROID_ANDROID_DISPLAY_H_
20 #define MIR_GRAPHICS_ANDROID_ANDROID_DISPLAY_H_
38 class DisplaySupportProvider;
39 class ConfigurableDisplayBuffer;
41 class AndroidDisplay :
public Display
44 explicit AndroidDisplay(std::shared_ptr<DisplayBuilder>
const& display_builder,
45 std::shared_ptr<GLConfig>
const& gl_config,
46 std::shared_ptr<DisplayReport>
const& display_report);
50 std::unique_ptr<DisplayConfiguration>
configuration()
const override;
51 void configure(DisplayConfiguration
const&)
override;
54 EventHandlerRegister& handlers,
58 EventHandlerRegister& handlers,
69 std::shared_ptr<DisplayBuilder>
const display_builder;
73 std::unique_ptr<ConfigurableDisplayBuffer>
const display_buffer;
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.
virtual void resume()=0
Resumes the display.
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 std::weak_ptr< Cursor > the_cursor()=0
Gets the hardware cursor object.
virtual void configure(DisplayConfiguration const &conf)=0
Sets a new output configuration.
std::function< bool()> DisplayResumeHandler
Definition: display.h:38
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:35
std::function< void()> DisplayConfigurationChangeHandler
Definition: display.h:39
virtual std::unique_ptr< GLContext > create_gl_context()=0
Creates a GLContext object that shares resources with the Display's GL context.