1116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Copyright 2014 The Chromium Authors. All rights reserved.
2116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// Use of this source code is governed by a BSD-style license that can be
3116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch// found in the LICENSE file.
4116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
5116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#ifndef UI_OZONE_COMMON_GPU_OZONE_GPU_MESSAGE_PARAMS_H_
6116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#define UI_OZONE_COMMON_GPU_OZONE_GPU_MESSAGE_PARAMS_H_
7116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
8116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include <string>
9116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include <vector>
10116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
11116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "ui/display/types/display_constants.h"
12116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "ui/gfx/geometry/point.h"
13116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#include "ui/gfx/geometry/size.h"
14116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
15116680a4aac90f2aa7413d9095a592090648e557Ben Murdochnamespace ui {
16116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
17116680a4aac90f2aa7413d9095a592090648e557Ben Murdochstruct DisplayMode_Params {
18116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  DisplayMode_Params();
19116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  ~DisplayMode_Params();
20116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
21116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  gfx::Size size;
22116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  bool is_interlaced;
23116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  float refresh_rate;
24116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch};
25116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
26116680a4aac90f2aa7413d9095a592090648e557Ben Murdochstruct DisplaySnapshot_Params {
27116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  DisplaySnapshot_Params();
28116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  ~DisplaySnapshot_Params();
29116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
30116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  int64_t display_id;
31116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  bool has_proper_display_id;
32116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  gfx::Point origin;
33116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  gfx::Size physical_size;
34116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  DisplayConnectionType type;
35116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  bool is_aspect_preserving_scaling;
36116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  bool has_overscan;
37116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  std::string display_name;
38116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  std::vector<DisplayMode_Params> modes;
39116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  bool has_current_mode;
40116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  DisplayMode_Params current_mode;
41116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  bool has_native_mode;
42116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  DisplayMode_Params native_mode;
43116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch  std::string string_representation;
44116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch};
45116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
46116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch}  // namespace ui
47116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
48116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch#endif  // UI_OZONE_COMMON_GPU_OZONE_GPU_MESSAGE_PARAMS_H_
49116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch
50