Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(410)

Side by Side Diff: ui/display/chromeos/test/action_logger_util.cc

Issue 2540313002: Split //ui/display and create //ui/display/manager. (Closed)
Patch Set: Cleanup export header. Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include "ui/display/chromeos/test/action_logger_util.h"
6
7 #include <stddef.h>
8
9 #include "base/format_macros.h"
10 #include "base/logging.h"
11 #include "base/strings/stringprintf.h"
12 #include "ui/display/types/display_mode.h"
13 #include "ui/display/types/display_snapshot.h"
14 #include "ui/display/types/gamma_ramp_rgb_entry.h"
15 #include "ui/display/types/native_display_delegate.h"
16 #include "ui/gfx/geometry/point.h"
17 #include "ui/gfx/geometry/size.h"
18
19 namespace ui {
20 namespace test {
21
22 std::string DisplaySnapshotToString(const DisplaySnapshot& output) {
23 return base::StringPrintf("id=%" PRId64, output.display_id());
24 }
25
26 std::string GetBackgroundAction(uint32_t color_argb) {
27 return base::StringPrintf("background(0x%x)", color_argb);
28 }
29
30 std::string GetAddOutputModeAction(const DisplaySnapshot& output,
31 const DisplayMode* mode) {
32 return base::StringPrintf("add_mode(output=%" PRId64 ",mode=%s)",
33 output.display_id(), mode->ToString().c_str());
34 }
35
36 std::string GetCrtcAction(const DisplaySnapshot& output,
37 const DisplayMode* mode,
38 const gfx::Point& origin) {
39 return base::StringPrintf("crtc(display=[%s],x=%d,y=%d,mode=[%s])",
40 DisplaySnapshotToString(output).c_str(), origin.x(),
41 origin.y(),
42 mode ? mode->ToString().c_str() : "NULL");
43 }
44
45 std::string GetFramebufferAction(const gfx::Size& size,
46 const DisplaySnapshot* out1,
47 const DisplaySnapshot* out2) {
48 return base::StringPrintf(
49 "framebuffer(width=%d,height=%d,display1=%s,display2=%s)", size.width(),
50 size.height(), out1 ? DisplaySnapshotToString(*out1).c_str() : "NULL",
51 out2 ? DisplaySnapshotToString(*out2).c_str() : "NULL");
52 }
53
54 std::string GetSetHDCPStateAction(const DisplaySnapshot& output,
55 HDCPState state) {
56 return base::StringPrintf("set_hdcp(id=%" PRId64 ",state=%d)",
57 output.display_id(), state);
58 }
59
60 std::string SetColorCorrectionAction(
61 const ui::DisplaySnapshot& output,
62 const std::vector<GammaRampRGBEntry>& degamma_lut,
63 const std::vector<GammaRampRGBEntry>& gamma_lut,
64 const std::vector<float>& correction_matrix) {
65 std::string degamma_table;
66 for (size_t i = 0; i < degamma_lut.size(); ++i) {
67 degamma_table += base::StringPrintf(",degamma[%" PRIuS "]=%04x%04x%04x", i,
68 degamma_lut[i].r, degamma_lut[i].g,
69 degamma_lut[i].b);
70 }
71 std::string gamma_table;
72 for (size_t i = 0; i < gamma_lut.size(); ++i) {
73 gamma_table +=
74 base::StringPrintf(",gamma[%" PRIuS "]=%04x%04x%04x", i, gamma_lut[i].r,
75 gamma_lut[i].g, gamma_lut[i].b);
76 }
77
78 std::string ctm;
79 for (size_t i = 0; i < correction_matrix.size(); ++i) {
80 ctm += base::StringPrintf(",ctm[%" PRIuS "]=%f", i, correction_matrix[i]);
81 }
82
83 return base::StringPrintf("set_color_correction(id=%" PRId64 "%s%s%s)",
84 output.display_id(), degamma_table.c_str(),
85 gamma_table.c_str(), ctm.c_str());
86 }
87
88 std::string JoinActions(const char* action, ...) {
89 std::string actions;
90
91 va_list arg_list;
92 va_start(arg_list, action);
93 while (action) {
94 if (!actions.empty())
95 actions += ",";
96 actions += action;
97 action = va_arg(arg_list, const char*);
98 }
99 va_end(arg_list);
100 return actions;
101 }
102
103 } // namespace test
104 } // namespace ui
OLDNEW
« no previous file with comments | « ui/display/chromeos/test/action_logger_util.h ('k') | ui/display/chromeos/test/test_display_layout_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698