Mir
Public Member Functions | Protected Member Functions | List of all members
mir::graphics::DisplayConfigurationObserver Class Referenceabstract

#include <display_configuration_observer.h>

Public Member Functions

virtual void initial_configuration (std::shared_ptr< DisplayConfiguration const > const &config)=0
 Notification of the initial display configuration. More...
 
virtual void configuration_applied (std::shared_ptr< DisplayConfiguration const > const &config)=0
 Notification after every successful display configuration. More...
 
virtual void base_configuration_updated (std::shared_ptr< DisplayConfiguration const > const &base_config)=0
 Notification after updating base display configuration. More...
 
virtual void session_configuration_applied (std::shared_ptr< frontend::Session > const &session, std::shared_ptr< DisplayConfiguration > const &config)=0
 Notification after updating the session display configuration. More...
 
virtual void session_configuration_removed (std::shared_ptr< frontend::Session > const &session)=0
 Notification after removing the session display configuration. More...
 
virtual void configuration_failed (std::shared_ptr< DisplayConfiguration const > const &attempted, std::exception const &error)=0
 Notification after every failed display configuration attempt. More...
 
virtual void catastrophic_configuration_error (std::shared_ptr< DisplayConfiguration const > const &failed_fallback, std::exception const &error)=0
 Notification after a failed display configuration with failed recovery. More...
 

Protected Member Functions

 DisplayConfigurationObserver ()=default
 
virtual ~DisplayConfigurationObserver ()=default
 
 DisplayConfigurationObserver (DisplayConfigurationObserver const &)=delete
 
DisplayConfigurationObserveroperator= (DisplayConfigurationObserver const &)=delete
 

Constructor & Destructor Documentation

mir::graphics::DisplayConfigurationObserver::DisplayConfigurationObserver ( )
protecteddefault
virtual mir::graphics::DisplayConfigurationObserver::~DisplayConfigurationObserver ( )
protectedvirtualdefault
mir::graphics::DisplayConfigurationObserver::DisplayConfigurationObserver ( DisplayConfigurationObserver const &  )
protecteddelete

Member Function Documentation

virtual void mir::graphics::DisplayConfigurationObserver::base_configuration_updated ( std::shared_ptr< DisplayConfiguration const > const &  base_config)
pure virtual

Notification after updating base display configuration.

Parameters
[in]configThe configuration that has just been updated.
virtual void mir::graphics::DisplayConfigurationObserver::catastrophic_configuration_error ( std::shared_ptr< DisplayConfiguration const > const &  failed_fallback,
std::exception const &  error 
)
pure virtual

Notification after a failed display configuration with failed recovery.

This is called if the graphics platform throws an exception when trying to configure the hardware and has thrown an exception when trying to re-apply the previous configuration.

When this call is made it is unknown what state the display hardware is in, but it's unlikely to be displaying any image to the user.

As there is no sensible behaviour for Mir to have in this case, the shell should respond to this either by trying to guess a safe configuration, by switching to some other display mechanism, or by terminating.

Parameters
[in]failed_fallbackThe fallback display configuration that failed to apply.
errorThe exception thrown by the graphics platform.
virtual void mir::graphics::DisplayConfigurationObserver::configuration_applied ( std::shared_ptr< DisplayConfiguration const > const &  config)
pure virtual

Notification after every successful display configuration.

This is called once per successful display configuration, after it has been applied to the hardware.

Parameters
[in]configThe configuration that has just been applied.
virtual void mir::graphics::DisplayConfigurationObserver::configuration_failed ( std::shared_ptr< DisplayConfiguration const > const &  attempted,
std::exception const &  error 
)
pure virtual

Notification after every failed display configuration attempt.

This is called if the graphics platform throws an exception when trying to configure the hardware.

In this case the previous display configuration has been re-applied.

Parameters
[in]attemptedThe display configuration that failed to apply.
[in]errorThe exception thrown by the graphics platform.
virtual void mir::graphics::DisplayConfigurationObserver::initial_configuration ( std::shared_ptr< DisplayConfiguration const > const &  config)
pure virtual

Notification of the initial display configuration.

This is called exactly once, at server startup.

Parameters
[in]configThe initial configuration
DisplayConfigurationObserver& mir::graphics::DisplayConfigurationObserver::operator= ( DisplayConfigurationObserver const &  )
protecteddelete
virtual void mir::graphics::DisplayConfigurationObserver::session_configuration_applied ( std::shared_ptr< frontend::Session > const &  session,
std::shared_ptr< DisplayConfiguration > const &  config 
)
pure virtual

Notification after updating the session display configuration.

Parameters
[in]sessionThe session that is updating its display configuration.
[in]configThe configuration that is being applied to the session.
virtual void mir::graphics::DisplayConfigurationObserver::session_configuration_removed ( std::shared_ptr< frontend::Session > const &  session)
pure virtual

Notification after removing the session display configuration.

Parameters
[in]sessionThe session that is removing its display configuration.

The documentation for this class was generated from the following file:

Copyright © 2012-2016 Canonical Ltd.
Generated on Wed Oct 11 22:26:23 UTC 2017