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

Side by Side Diff: ui/gfx/ipc/gfx_param_traits.h

Issue 1924613002: Move ui/gfx/geometry ParamTraits to ui/gfx/ipc/geometry (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Forward declare Range in gfx_param_traits Created 4 years, 7 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
« no previous file with comments | « ui/gfx/ipc/geometry/gfx_param_traits.cc ('k') | ui/gfx/ipc/gfx_param_traits.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef UI_GFX_IPC_GFX_PARAM_TRAITS_H_ 5 #ifndef UI_GFX_IPC_GFX_PARAM_TRAITS_H_
6 #define UI_GFX_IPC_GFX_PARAM_TRAITS_H_ 6 #define UI_GFX_IPC_GFX_PARAM_TRAITS_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "ipc/ipc_message_utils.h" 10 #include "ipc/ipc_message_utils.h"
11 #include "ipc/param_traits_macros.h" 11 #include "ipc/param_traits_macros.h"
12 #include "ui/gfx/buffer_types.h" 12 #include "ui/gfx/buffer_types.h"
13 #include "ui/gfx/ipc/gfx_ipc_export.h" 13 #include "ui/gfx/ipc/gfx_ipc_export.h"
14 #include "ui/gfx/ipc/gfx_param_traits_macros.h" 14 #include "ui/gfx/ipc/gfx_param_traits_macros.h"
15 15
16 #if defined(OS_MACOSX) && !defined(OS_IOS) 16 #if defined(OS_MACOSX) && !defined(OS_IOS)
17 #include "ui/gfx/mac/io_surface.h" 17 #include "ui/gfx/mac/io_surface.h"
18 #endif 18 #endif
19 19
20 namespace gfx { 20 namespace gfx {
21 class Point;
22 class PointF;
23 class Point3F;
24 class Range; 21 class Range;
25 class Rect; 22 }
26 class RectF;
27 class ScrollOffset;
28 class Size;
29 class SizeF;
30 class Vector2d;
31 class Vector2dF;
32 } // namespace gfx
33 23
34 namespace IPC { 24 namespace IPC {
35 25
36 template <> 26 template <>
37 struct GFX_IPC_EXPORT ParamTraits<gfx::Point> {
38 typedef gfx::Point param_type;
39 static void Write(base::Pickle* m, const param_type& p);
40 static bool Read(const base::Pickle* m,
41 base::PickleIterator* iter,
42 param_type* r);
43 static void Log(const param_type& p, std::string* l);
44 };
45
46 template <>
47 struct GFX_IPC_EXPORT ParamTraits<gfx::PointF> {
48 typedef gfx::PointF param_type;
49 static void GetSize(base::PickleSizer* s, const param_type& p);
50 static void Write(base::Pickle* m, const param_type& p);
51 static bool Read(const base::Pickle* m,
52 base::PickleIterator* iter,
53 param_type* r);
54 static void Log(const param_type& p, std::string* l);
55 };
56
57 template <>
58 struct GFX_IPC_EXPORT ParamTraits<gfx::Point3F> {
59 typedef gfx::Point3F param_type;
60 static void Write(base::Pickle* m, const param_type& p);
61 static bool Read(const base::Pickle* m,
62 base::PickleIterator* iter,
63 param_type* r);
64 static void Log(const param_type& p, std::string* l);
65 };
66
67 template <>
68 struct GFX_IPC_EXPORT ParamTraits<gfx::Size> {
69 typedef gfx::Size param_type;
70 static void Write(base::Pickle* m, const param_type& p);
71 static bool Read(const base::Pickle* m,
72 base::PickleIterator* iter,
73 param_type* r);
74 static void Log(const param_type& p, std::string* l);
75 };
76
77 template <>
78 struct GFX_IPC_EXPORT ParamTraits<gfx::SizeF> {
79 typedef gfx::SizeF param_type;
80 static void Write(base::Pickle* m, const param_type& p);
81 static bool Read(const base::Pickle* m,
82 base::PickleIterator* iter,
83 param_type* r);
84 static void Log(const param_type& p, std::string* l);
85 };
86
87 template <>
88 struct GFX_IPC_EXPORT ParamTraits<gfx::Vector2d> {
89 typedef gfx::Vector2d param_type;
90 static void GetSize(base::PickleSizer* s, const param_type& p);
91 static void Write(base::Pickle* m, const param_type& p);
92 static bool Read(const base::Pickle* m,
93 base::PickleIterator* iter,
94 param_type* r);
95 static void Log(const param_type& p, std::string* l);
96 };
97
98 template <>
99 struct GFX_IPC_EXPORT ParamTraits<gfx::Vector2dF> {
100 typedef gfx::Vector2dF param_type;
101 static void Write(base::Pickle* m, const param_type& p);
102 static bool Read(const base::Pickle* m,
103 base::PickleIterator* iter,
104 param_type* r);
105 static void Log(const param_type& p, std::string* l);
106 };
107
108 template <>
109 struct GFX_IPC_EXPORT ParamTraits<gfx::Rect> {
110 typedef gfx::Rect param_type;
111 static void Write(base::Pickle* m, const param_type& p);
112 static bool Read(const base::Pickle* m,
113 base::PickleIterator* iter,
114 param_type* r);
115 static void Log(const param_type& p, std::string* l);
116 };
117
118 template <>
119 struct GFX_IPC_EXPORT ParamTraits<gfx::RectF> {
120 typedef gfx::RectF param_type;
121 static void GetSize(base::PickleSizer* s, const param_type& p);
122 static void Write(base::Pickle* m, const param_type& p);
123 static bool Read(const base::Pickle* m,
124 base::PickleIterator* iter,
125 param_type* r);
126 static void Log(const param_type& p, std::string* l);
127 };
128
129 template <>
130 struct GFX_IPC_EXPORT ParamTraits<gfx::Range> { 27 struct GFX_IPC_EXPORT ParamTraits<gfx::Range> {
131 typedef gfx::Range param_type; 28 typedef gfx::Range param_type;
132 static void Write(base::Pickle* m, const param_type& p); 29 static void Write(base::Pickle* m, const param_type& p);
133 static bool Read(const base::Pickle* m, 30 static bool Read(const base::Pickle* m,
134 base::PickleIterator* iter, 31 base::PickleIterator* iter,
135 param_type* r); 32 param_type* r);
136 static void Log(const param_type& p, std::string* l); 33 static void Log(const param_type& p, std::string* l);
137 }; 34 };
138 35
139 template <>
140 struct GFX_IPC_EXPORT ParamTraits<gfx::ScrollOffset> {
141 typedef gfx::ScrollOffset param_type;
142 static void Write(base::Pickle* m, const param_type& p);
143 static bool Read(const base::Pickle* m,
144 base::PickleIterator* iter,
145 param_type* r);
146 static void Log(const param_type& p, std::string* l);
147 };
148
149 #if defined(OS_MACOSX) && !defined(OS_IOS) 36 #if defined(OS_MACOSX) && !defined(OS_IOS)
150 template <> 37 template <>
151 struct GFX_IPC_EXPORT ParamTraits<gfx::ScopedRefCountedIOSurfaceMachPort> { 38 struct GFX_IPC_EXPORT ParamTraits<gfx::ScopedRefCountedIOSurfaceMachPort> {
152 typedef gfx::ScopedRefCountedIOSurfaceMachPort param_type; 39 typedef gfx::ScopedRefCountedIOSurfaceMachPort param_type;
153 static void Write(base::Pickle* m, const param_type p); 40 static void Write(base::Pickle* m, const param_type p);
154 // Note: Read() passes ownership of the Mach send right from the IPC message 41 // Note: Read() passes ownership of the Mach send right from the IPC message
155 // to the ScopedRefCountedIOSurfaceMachPort. Therefore, Read() may only be 42 // to the ScopedRefCountedIOSurfaceMachPort. Therefore, Read() may only be
156 // called once for a given message, otherwise the singular right will be 43 // called once for a given message, otherwise the singular right will be
157 // managed and released by two objects. 44 // managed and released by two objects.
158 static bool Read(const base::Pickle* m, 45 static bool Read(const base::Pickle* m,
159 base::PickleIterator* iter, 46 base::PickleIterator* iter,
160 param_type* r); 47 param_type* r);
161 static void Log(const param_type& p, std::string* l); 48 static void Log(const param_type& p, std::string* l);
162 }; 49 };
163 #endif // defined(OS_MACOSX) && !defined(OS_IOS) 50 #endif // defined(OS_MACOSX) && !defined(OS_IOS)
164 51
165 } // namespace IPC 52 } // namespace IPC
166 53
167 #endif // UI_GFX_IPC_GFX_PARAM_TRAITS_H_ 54 #endif // UI_GFX_IPC_GFX_PARAM_TRAITS_H_
OLDNEW
« no previous file with comments | « ui/gfx/ipc/geometry/gfx_param_traits.cc ('k') | ui/gfx/ipc/gfx_param_traits.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698