1 // Copyright 2017 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 #ifndef UI_DISPLAY_MOJOM_DISPLAY_CONSTANTS_MOJOM_TRAITS_H_
6 #define UI_DISPLAY_MOJOM_DISPLAY_CONSTANTS_MOJOM_TRAITS_H_
7 
8 #include "ui/display/mojom/display_constants.mojom.h"
9 #include "ui/display/types/display_constants.h"
10 
11 namespace mojo {
12 
13 template <>
14 struct EnumTraits<display::mojom::DisplayConnectionType,
15                   display::DisplayConnectionType> {
16   static display::mojom::DisplayConnectionType ToMojom(
17       display::DisplayConnectionType type);
18   static bool FromMojom(display::mojom::DisplayConnectionType type,
19                         display::DisplayConnectionType* out);
20 };
21 
22 template <>
23 struct EnumTraits<display::mojom::HDCPState, display::HDCPState> {
24   static display::mojom::HDCPState ToMojom(display::HDCPState type);
25   static bool FromMojom(display::mojom::HDCPState type,
26                         display::HDCPState* out);
27 };
28 
29 template <>
30 struct EnumTraits<display::mojom::PanelOrientation, display::PanelOrientation> {
31   static display::mojom::PanelOrientation ToMojom(
32       display::PanelOrientation type);
33   static bool FromMojom(display::mojom::PanelOrientation type,
34                         display::PanelOrientation* out);
35 };
36 
37 template <>
38 struct EnumTraits<display::mojom::PrivacyScreenState,
39                   display::PrivacyScreenState> {
40   static display::mojom::PrivacyScreenState ToMojom(
41       display::PrivacyScreenState type);
42   static bool FromMojom(display::mojom::PrivacyScreenState type,
43                         display::PrivacyScreenState* out);
44 };
45 
46 }  // namespace mojo
47 
48 #endif  // UI_DISPLAY_MOJOM_DISPLAY_CONSTANTS_MOJOM_TRAITS_H_
49