19
19
#ifndef MIR_DISPLAYCONFIGURATIONREPORT_H
20
20
#define MIR_DISPLAYCONFIGURATIONREPORT_H
22
#include "mir/graphics/display_configuration_report.h"
22
#include "mir/graphics/display_configuration_observer.h"
28
namespace logging { class Logger; }
28
namespace logging { class Logger; enum class Severity; }
34
class DisplayConfigurationReport : public mir::graphics::DisplayConfigurationReport
34
class DisplayConfigurationReport : public mir::graphics::DisplayConfigurationObserver
37
37
DisplayConfigurationReport(std::shared_ptr<mir::logging::Logger> const& logger);
38
38
~DisplayConfigurationReport();
40
virtual void initial_configuration(graphics::DisplayConfiguration const& configuration) override;
42
virtual void new_configuration(graphics::DisplayConfiguration const& configuration) override;
40
void configuration_applied(
41
std::shared_ptr<graphics::DisplayConfiguration const> const& config) override;
43
void base_configuration_updated(std::shared_ptr<graphics::DisplayConfiguration const> const& base_config) override;
45
void configuration_failed(
46
std::shared_ptr<graphics::DisplayConfiguration const> const& attempted,
47
std::exception const& error) override;
49
void initial_configuration(
50
std::shared_ptr<graphics::DisplayConfiguration const> const& configuration) override;
52
void catastrophic_configuration_error(
53
std::shared_ptr<graphics::DisplayConfiguration const> const& failed_fallback,
54
std::exception const& error) override;
45
void log_configuration(graphics::DisplayConfiguration const& configuration) const;
57
void log_configuration(
58
mir::logging::Severity severity,
59
graphics::DisplayConfiguration const& configuration) const;
46
60
std::shared_ptr<mir::logging::Logger> const logger;