~vanvugt/mir/simplify-DisplayReport

« back to all changes in this revision

Viewing changes to src/server/logging/display_report.cpp

  • Committer: Daniel van Vugt
  • Date: 2013-12-19 07:56:16 UTC
  • Revision ID: daniel.van.vugt@canonical.com-20131219075616-xvm4kt4pg8c0be3z
Initial attempt at simplifying DisplayReport

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
 
25
25
namespace ml=mir::logging;
26
26
 
 
27
namespace
 
28
{
 
29
    const char * const component = "graphics";
 
30
}
 
31
 
27
32
ml::DisplayReport::DisplayReport(const std::shared_ptr<Logger>& logger) : logger(logger)
28
33
{
29
34
}
32
37
{
33
38
}
34
39
 
35
 
const char* ml::DisplayReport::component()
36
 
{
37
 
    static const char* s = "graphics";
38
 
    return s;
39
 
}
40
 
 
41
 
 
42
 
void ml::DisplayReport::report_successful_setup_of_native_resources()
43
 
{
44
 
    logger->log(Logger::informational, "Successfully setup native resources.", component());
45
 
}
46
 
 
47
 
void ml::DisplayReport::report_successful_egl_make_current_on_construction()
48
 
{
49
 
    logger->log(Logger::informational, "Successfully made egl context current on construction.", component());
50
 
}
51
 
 
52
 
void ml::DisplayReport::report_successful_egl_buffer_swap_on_construction()
53
 
{
54
 
    logger->log(Logger::informational, "Successfully performed egl buffer swap on construction.", component());
55
 
}
56
 
 
57
 
void ml::DisplayReport::report_successful_drm_mode_set_crtc_on_construction()
58
 
{
59
 
    logger->log(Logger::informational, "Successfully performed drm mode setup on construction.", component());
60
 
}
61
 
 
62
 
void ml::DisplayReport::report_successful_display_construction()
63
 
{
64
 
    logger->log(Logger::informational, "Successfully finished construction.", component());
 
40
void ml::DisplayReport::report_success(bool success, char const* what)
 
41
{
 
42
    std::string msg = success ? "Successful " : "Failed ";
 
43
    msg += what;
 
44
    Logger::Severity sev = success ? Logger::informational :
 
45
                                     Logger::error;
 
46
    logger->log(sev, msg, component);
65
47
}
66
48
 
67
49
void ml::DisplayReport::report_drm_master_failure(int error)
71
53
    if (error == EPERM || error == EACCES)
72
54
        ss << " Try running Mir with root privileges.";
73
55
 
74
 
    logger->log(Logger::warning, ss.str(), component());
75
 
}
76
 
 
77
 
void ml::DisplayReport::report_vt_switch_away_failure()
78
 
{
79
 
    logger->log(Logger::warning, "Failed to switch away from Mir VT.", component());
80
 
}
81
 
 
82
 
void ml::DisplayReport::report_vt_switch_back_failure()
83
 
{
84
 
    logger->log(Logger::warning, "Failed to switch back to Mir VT.", component());
 
56
    logger->log(Logger::warning, ss.str(), component);
85
57
}
86
58
 
87
59
void ml::DisplayReport::report_hwc_composition_in_use(int major, int minor)
88
60
{
89
61
    std::stringstream ss;
90
62
    ss << "HWC version " << major << "." << minor << " in use for display.";
91
 
    logger->log(Logger::informational, ss.str(), component());
 
63
    logger->log(Logger::informational, ss.str(), component);
92
64
}
93
65
 
94
66
void ml::DisplayReport::report_gpu_composition_in_use()
95
67
{
96
 
    logger->log(Logger::informational, "GPU backup in use for display.", component());
 
68
    logger->log(Logger::informational, "GPU backup in use for display.", component);
97
69
}
98
70
 
99
71
void ml::DisplayReport::report_egl_configuration(EGLDisplay disp, EGLConfig config)
143
115
    };
144
116
    #undef STRMACRO
145
117
 
146
 
    logger->log(Logger::informational, "Display EGL Configuration:", component());
 
118
    logger->log(Logger::informational, "Display EGL Configuration:", component);
147
119
    for( auto &i : egl_string_mapping)
148
120
    {
149
121
        EGLint value;
150
122
        eglGetConfigAttrib(disp, config, i.val, &value);
151
123
        logger->log(Logger::informational, 
152
 
            "    [" + i.name + "] : " + std::to_string(value), component());
 
124
            "    [" + i.name + "] : " + std::to_string(value), component);
153
125
    }
154
126
}