1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
|
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "ui/display/chromeos/test/action_logger_util.h"
#include "base/format_macros.h"
#include "base/strings/stringprintf.h"
#include "ui/display/types/display_mode.h"
#include "ui/display/types/display_snapshot.h"
#include "ui/gfx/geometry/point.h"
#include "ui/gfx/geometry/size.h"
namespace ui {
namespace test {
std::string DisplaySnapshotToString(const DisplaySnapshot& output) {
return base::StringPrintf("id=%" PRId64, output.display_id());
}
std::string GetBackgroundAction(uint32_t color_argb) {
return base::StringPrintf("background(0x%x)", color_argb);
}
std::string GetAddOutputModeAction(const DisplaySnapshot& output,
const DisplayMode* mode) {
return base::StringPrintf("add_mode(output=%" PRId64 ",mode=%s)",
output.display_id(), mode->ToString().c_str());
}
std::string GetCrtcAction(const DisplaySnapshot& output,
const DisplayMode* mode,
const gfx::Point& origin) {
return base::StringPrintf("crtc(display=[%s],x=%d,y=%d,mode=[%s])",
DisplaySnapshotToString(output).c_str(), origin.x(),
origin.y(),
mode ? mode->ToString().c_str() : "NULL");
}
std::string GetFramebufferAction(const gfx::Size& size,
const DisplaySnapshot* out1,
const DisplaySnapshot* out2) {
return base::StringPrintf(
"framebuffer(width=%d,height=%d,display1=%s,display2=%s)", size.width(),
size.height(), out1 ? DisplaySnapshotToString(*out1).c_str() : "NULL",
out2 ? DisplaySnapshotToString(*out2).c_str() : "NULL");
}
std::string GetSetHDCPStateAction(const DisplaySnapshot& output,
HDCPState state) {
return base::StringPrintf("set_hdcp(id=%" PRId64 ",state=%d)",
output.display_id(), state);
}
std::string JoinActions(const char* action, ...) {
std::string actions;
va_list arg_list;
va_start(arg_list, action);
while (action) {
if (!actions.empty())
actions += ",";
actions += action;
action = va_arg(arg_list, const char*);
}
va_end(arg_list);
return actions;
}
} // namespace test
} // namespace ui
|