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

Side by Side Diff: services/video_capture/public/interfaces/device_descriptor_struct_traits.cc

Issue 2813343002: [Mojo Video Capture] Switch to using Mojo structs in media/capture/mojo (Closed)
Patch Set: Removed extraneous AtLeast Created 3 years, 8 months 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 2016 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 "services/video_capture/public/interfaces/device_descriptor_struct_trai ts.h"
6
7 namespace mojo {
8
9 // static
10 video_capture::mojom::VideoCaptureApi
11 EnumTraits<video_capture::mojom::VideoCaptureApi,
12 media::VideoCaptureApi>::ToMojom(media::VideoCaptureApi input) {
13 switch (input) {
14 case media::VideoCaptureApi::LINUX_V4L2_SINGLE_PLANE:
15 return video_capture::mojom::VideoCaptureApi::LINUX_V4L2_SINGLE_PLANE;
16 case media::VideoCaptureApi::WIN_MEDIA_FOUNDATION:
17 return video_capture::mojom::VideoCaptureApi::WIN_MEDIA_FOUNDATION;
18 case media::VideoCaptureApi::WIN_DIRECT_SHOW:
19 return video_capture::mojom::VideoCaptureApi::WIN_DIRECT_SHOW;
20 case media::VideoCaptureApi::MACOSX_AVFOUNDATION:
21 return video_capture::mojom::VideoCaptureApi::MACOSX_AVFOUNDATION;
22 case media::VideoCaptureApi::MACOSX_DECKLINK:
23 return video_capture::mojom::VideoCaptureApi::MACOSX_DECKLINK;
24 case media::VideoCaptureApi::ANDROID_API1:
25 return video_capture::mojom::VideoCaptureApi::ANDROID_API1;
26 case media::VideoCaptureApi::ANDROID_API2_LEGACY:
27 return video_capture::mojom::VideoCaptureApi::ANDROID_API2_LEGACY;
28 case media::VideoCaptureApi::ANDROID_API2_FULL:
29 return video_capture::mojom::VideoCaptureApi::ANDROID_API2_FULL;
30 case media::VideoCaptureApi::ANDROID_API2_LIMITED:
31 return video_capture::mojom::VideoCaptureApi::ANDROID_API2_LIMITED;
32 case media::VideoCaptureApi::ANDROID_TANGO:
33 return video_capture::mojom::VideoCaptureApi::ANDROID_TANGO;
34 case media::VideoCaptureApi::UNKNOWN:
35 return video_capture::mojom::VideoCaptureApi::UNKNOWN;
36 }
37 NOTREACHED();
38 return video_capture::mojom::VideoCaptureApi::UNKNOWN;
39 }
40
41 // static
42 bool EnumTraits<video_capture::mojom::VideoCaptureApi, media::VideoCaptureApi>::
43 FromMojom(video_capture::mojom::VideoCaptureApi input,
44 media::VideoCaptureApi* output) {
45 switch (input) {
46 case video_capture::mojom::VideoCaptureApi::LINUX_V4L2_SINGLE_PLANE:
47 *output = media::VideoCaptureApi::LINUX_V4L2_SINGLE_PLANE;
48 return true;
49 case video_capture::mojom::VideoCaptureApi::WIN_MEDIA_FOUNDATION:
50 *output = media::VideoCaptureApi::WIN_MEDIA_FOUNDATION;
51 return true;
52 case video_capture::mojom::VideoCaptureApi::WIN_DIRECT_SHOW:
53 *output = media::VideoCaptureApi::WIN_DIRECT_SHOW;
54 return true;
55 case video_capture::mojom::VideoCaptureApi::MACOSX_AVFOUNDATION:
56 *output = media::VideoCaptureApi::MACOSX_AVFOUNDATION;
57 return true;
58 case video_capture::mojom::VideoCaptureApi::MACOSX_DECKLINK:
59 *output = media::VideoCaptureApi::MACOSX_DECKLINK;
60 return true;
61 case video_capture::mojom::VideoCaptureApi::ANDROID_API1:
62 *output = media::VideoCaptureApi::ANDROID_API1;
63 return true;
64 case video_capture::mojom::VideoCaptureApi::ANDROID_API2_LEGACY:
65 *output = media::VideoCaptureApi::ANDROID_API2_LEGACY;
66 return true;
67 case video_capture::mojom::VideoCaptureApi::ANDROID_API2_FULL:
68 *output = media::VideoCaptureApi::ANDROID_API2_FULL;
69 return true;
70 case video_capture::mojom::VideoCaptureApi::ANDROID_API2_LIMITED:
71 *output = media::VideoCaptureApi::ANDROID_API2_LIMITED;
72 return true;
73 case video_capture::mojom::VideoCaptureApi::ANDROID_TANGO:
74 *output = media::VideoCaptureApi::ANDROID_TANGO;
75 return true;
76 case video_capture::mojom::VideoCaptureApi::UNKNOWN:
77 *output = media::VideoCaptureApi::UNKNOWN;
78 return true;
79 }
80 NOTREACHED();
81 return false;
82 }
83
84 // static
85 video_capture::mojom::VideoCaptureTransportType EnumTraits<
86 video_capture::mojom::VideoCaptureTransportType,
87 media::VideoCaptureTransportType>::ToMojom(media::VideoCaptureTransportType
88 input) {
89 switch (input) {
90 case media::VideoCaptureTransportType::MACOSX_USB_OR_BUILT_IN:
91 return video_capture::mojom::VideoCaptureTransportType::
92 MACOSX_USB_OR_BUILT_IN;
93 case media::VideoCaptureTransportType::OTHER_TRANSPORT:
94 return video_capture::mojom::VideoCaptureTransportType::OTHER_TRANSPORT;
95 }
96 NOTREACHED();
97 return video_capture::mojom::VideoCaptureTransportType::OTHER_TRANSPORT;
98 }
99
100 // static
101 bool EnumTraits<video_capture::mojom::VideoCaptureTransportType,
102 media::VideoCaptureTransportType>::
103 FromMojom(video_capture::mojom::VideoCaptureTransportType input,
104 media::VideoCaptureTransportType* output) {
105 switch (input) {
106 case video_capture::mojom::VideoCaptureTransportType::
107 MACOSX_USB_OR_BUILT_IN:
108 *output = media::VideoCaptureTransportType::MACOSX_USB_OR_BUILT_IN;
109 return true;
110 case video_capture::mojom::VideoCaptureTransportType::OTHER_TRANSPORT:
111 *output = media::VideoCaptureTransportType::OTHER_TRANSPORT;
112 return true;
113 }
114 NOTREACHED();
115 return false;
116 }
117
118 // static
119 bool StructTraits<video_capture::mojom::DeviceDescriptorDataView,
120 media::VideoCaptureDeviceDescriptor>::
121 Read(video_capture::mojom::DeviceDescriptorDataView data,
122 media::VideoCaptureDeviceDescriptor* output) {
123 if (!data.ReadDisplayName(&(output->display_name)))
124 return false;
125
126 if (!data.ReadDeviceId(&(output->device_id)))
127 return false;
128
129 if (!data.ReadModelId(&(output->model_id)))
130 return false;
131
132 if (!data.ReadCaptureApi(&(output->capture_api)))
133 return false;
134
135 if (!data.ReadTransportType(&(output->transport_type)))
136 return false;
137
138 return true;
139 }
140
141 } // namespace mojo
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698