1 // Copyright 2013 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.
5 #ifndef REMOTING_HOST_CHROMOTING_PARAM_TRAITS_H_
6 #define REMOTING_HOST_CHROMOTING_PARAM_TRAITS_H_
8 #include "ipc/ipc_message.h"
9 #include "ipc/ipc_param_traits.h"
10 #include "remoting/host/screen_resolution.h"
11 #include "third_party/webrtc/modules/desktop_capture/desktop_geometry.h"
16 struct ParamTraits
<webrtc::DesktopVector
> {
17 typedef webrtc::DesktopVector param_type
;
18 static void Write(Message
* m
, const param_type
& p
);
19 static bool Read(const Message
* m
, PickleIterator
* iter
, param_type
* r
);
20 static void Log(const param_type
& p
, std::string
* l
);
24 struct ParamTraits
<webrtc::DesktopSize
> {
25 typedef webrtc::DesktopSize param_type
;
26 static void Write(Message
* m
, const param_type
& p
);
27 static bool Read(const Message
* m
, PickleIterator
* iter
, param_type
* r
);
28 static void Log(const param_type
& p
, std::string
* l
);
32 struct ParamTraits
<webrtc::DesktopRect
> {
33 typedef webrtc::DesktopRect param_type
;
34 static void Write(Message
* m
, const param_type
& p
);
35 static bool Read(const Message
* m
, PickleIterator
* iter
, param_type
* r
);
36 static void Log(const param_type
& p
, std::string
* l
);
40 struct ParamTraits
<remoting::ScreenResolution
> {
41 typedef remoting::ScreenResolution param_type
;
42 static void Write(Message
* m
, const param_type
& p
);
43 static bool Read(const Message
* m
, PickleIterator
* iter
, param_type
* r
);
44 static void Log(const param_type
& p
, std::string
* l
);
49 #endif // REMOTING_HOST_CHROMOTING_PARAM_TRAITS_H_