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

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

Issue 1154283003: Change most uses of Pickle to base::Pickle (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 6 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
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 #include "ui/gfx/ipc/gfx_param_traits.h" 5 #include "ui/gfx/ipc/gfx_param_traits.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "third_party/skia/include/core/SkBitmap.h" 9 #include "third_party/skia/include/core/SkBitmap.h"
10 #include "ui/gfx/geometry/rect.h" 10 #include "ui/gfx/geometry/rect.h"
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
50 50
51 } // namespace 51 } // namespace
52 52
53 namespace IPC { 53 namespace IPC {
54 54
55 void ParamTraits<gfx::Point>::Write(Message* m, const gfx::Point& p) { 55 void ParamTraits<gfx::Point>::Write(Message* m, const gfx::Point& p) {
56 m->WriteInt(p.x()); 56 m->WriteInt(p.x());
57 m->WriteInt(p.y()); 57 m->WriteInt(p.y());
58 } 58 }
59 59
60 bool ParamTraits<gfx::Point>::Read(const Message* m, PickleIterator* iter, 60 bool ParamTraits<gfx::Point>::Read(const Message* m,
61 base::PickleIterator* iter,
61 gfx::Point* r) { 62 gfx::Point* r) {
62 int x, y; 63 int x, y;
63 if (!iter->ReadInt(&x) || 64 if (!iter->ReadInt(&x) ||
64 !iter->ReadInt(&y)) 65 !iter->ReadInt(&y))
65 return false; 66 return false;
66 r->set_x(x); 67 r->set_x(x);
67 r->set_y(y); 68 r->set_y(y);
68 return true; 69 return true;
69 } 70 }
70 71
71 void ParamTraits<gfx::Point>::Log(const gfx::Point& p, std::string* l) { 72 void ParamTraits<gfx::Point>::Log(const gfx::Point& p, std::string* l) {
72 l->append(base::StringPrintf("(%d, %d)", p.x(), p.y())); 73 l->append(base::StringPrintf("(%d, %d)", p.x(), p.y()));
73 } 74 }
74 75
75 void ParamTraits<gfx::PointF>::Write(Message* m, const gfx::PointF& v) { 76 void ParamTraits<gfx::PointF>::Write(Message* m, const gfx::PointF& v) {
76 ParamTraits<float>::Write(m, v.x()); 77 ParamTraits<float>::Write(m, v.x());
77 ParamTraits<float>::Write(m, v.y()); 78 ParamTraits<float>::Write(m, v.y());
78 } 79 }
79 80
80 bool ParamTraits<gfx::PointF>::Read(const Message* m, 81 bool ParamTraits<gfx::PointF>::Read(const Message* m,
81 PickleIterator* iter, 82 base::PickleIterator* iter,
82 gfx::PointF* r) { 83 gfx::PointF* r) {
83 float x, y; 84 float x, y;
84 if (!ParamTraits<float>::Read(m, iter, &x) || 85 if (!ParamTraits<float>::Read(m, iter, &x) ||
85 !ParamTraits<float>::Read(m, iter, &y)) 86 !ParamTraits<float>::Read(m, iter, &y))
86 return false; 87 return false;
87 r->set_x(x); 88 r->set_x(x);
88 r->set_y(y); 89 r->set_y(y);
89 return true; 90 return true;
90 } 91 }
91 92
92 void ParamTraits<gfx::PointF>::Log(const gfx::PointF& v, std::string* l) { 93 void ParamTraits<gfx::PointF>::Log(const gfx::PointF& v, std::string* l) {
93 l->append(base::StringPrintf("(%f, %f)", v.x(), v.y())); 94 l->append(base::StringPrintf("(%f, %f)", v.x(), v.y()));
94 } 95 }
95 96
96 void ParamTraits<gfx::Size>::Write(Message* m, const gfx::Size& p) { 97 void ParamTraits<gfx::Size>::Write(Message* m, const gfx::Size& p) {
97 DCHECK_GE(p.width(), 0); 98 DCHECK_GE(p.width(), 0);
98 DCHECK_GE(p.height(), 0); 99 DCHECK_GE(p.height(), 0);
99 int values[2] = { p.width(), p.height() }; 100 int values[2] = { p.width(), p.height() };
100 m->WriteBytes(&values, sizeof(int) * 2); 101 m->WriteBytes(&values, sizeof(int) * 2);
101 } 102 }
102 103
103 bool ParamTraits<gfx::Size>::Read(const Message* m, 104 bool ParamTraits<gfx::Size>::Read(const Message* m,
104 PickleIterator* iter, 105 base::PickleIterator* iter,
105 gfx::Size* r) { 106 gfx::Size* r) {
106 const char* char_values; 107 const char* char_values;
107 if (!iter->ReadBytes(&char_values, sizeof(int) * 2)) 108 if (!iter->ReadBytes(&char_values, sizeof(int) * 2))
108 return false; 109 return false;
109 const int* values = reinterpret_cast<const int*>(char_values); 110 const int* values = reinterpret_cast<const int*>(char_values);
110 if (values[0] < 0 || values[1] < 0) 111 if (values[0] < 0 || values[1] < 0)
111 return false; 112 return false;
112 r->set_width(values[0]); 113 r->set_width(values[0]);
113 r->set_height(values[1]); 114 r->set_height(values[1]);
114 return true; 115 return true;
115 } 116 }
116 117
117 void ParamTraits<gfx::Size>::Log(const gfx::Size& p, std::string* l) { 118 void ParamTraits<gfx::Size>::Log(const gfx::Size& p, std::string* l) {
118 l->append(base::StringPrintf("(%d, %d)", p.width(), p.height())); 119 l->append(base::StringPrintf("(%d, %d)", p.width(), p.height()));
119 } 120 }
120 121
121 void ParamTraits<gfx::SizeF>::Write(Message* m, const gfx::SizeF& p) { 122 void ParamTraits<gfx::SizeF>::Write(Message* m, const gfx::SizeF& p) {
122 float values[2] = { p.width(), p.height() }; 123 float values[2] = { p.width(), p.height() };
123 m->WriteBytes(&values, sizeof(float) * 2); 124 m->WriteBytes(&values, sizeof(float) * 2);
124 } 125 }
125 126
126 bool ParamTraits<gfx::SizeF>::Read(const Message* m, 127 bool ParamTraits<gfx::SizeF>::Read(const Message* m,
127 PickleIterator* iter, 128 base::PickleIterator* iter,
128 gfx::SizeF* r) { 129 gfx::SizeF* r) {
129 const char* char_values; 130 const char* char_values;
130 if (!iter->ReadBytes(&char_values, sizeof(float) * 2)) 131 if (!iter->ReadBytes(&char_values, sizeof(float) * 2))
131 return false; 132 return false;
132 const float* values = reinterpret_cast<const float*>(char_values); 133 const float* values = reinterpret_cast<const float*>(char_values);
133 r->set_width(values[0]); 134 r->set_width(values[0]);
134 r->set_height(values[1]); 135 r->set_height(values[1]);
135 return true; 136 return true;
136 } 137 }
137 138
138 void ParamTraits<gfx::SizeF>::Log(const gfx::SizeF& p, std::string* l) { 139 void ParamTraits<gfx::SizeF>::Log(const gfx::SizeF& p, std::string* l) {
139 l->append(base::StringPrintf("(%f, %f)", p.width(), p.height())); 140 l->append(base::StringPrintf("(%f, %f)", p.width(), p.height()));
140 } 141 }
141 142
142 void ParamTraits<gfx::Vector2d>::Write(Message* m, const gfx::Vector2d& p) { 143 void ParamTraits<gfx::Vector2d>::Write(Message* m, const gfx::Vector2d& p) {
143 int values[2] = { p.x(), p.y() }; 144 int values[2] = { p.x(), p.y() };
144 m->WriteBytes(&values, sizeof(int) * 2); 145 m->WriteBytes(&values, sizeof(int) * 2);
145 } 146 }
146 147
147 bool ParamTraits<gfx::Vector2d>::Read(const Message* m, 148 bool ParamTraits<gfx::Vector2d>::Read(const Message* m,
148 PickleIterator* iter, 149 base::PickleIterator* iter,
149 gfx::Vector2d* r) { 150 gfx::Vector2d* r) {
150 const char* char_values; 151 const char* char_values;
151 if (!iter->ReadBytes(&char_values, sizeof(int) * 2)) 152 if (!iter->ReadBytes(&char_values, sizeof(int) * 2))
152 return false; 153 return false;
153 const int* values = reinterpret_cast<const int*>(char_values); 154 const int* values = reinterpret_cast<const int*>(char_values);
154 r->set_x(values[0]); 155 r->set_x(values[0]);
155 r->set_y(values[1]); 156 r->set_y(values[1]);
156 return true; 157 return true;
157 } 158 }
158 159
159 void ParamTraits<gfx::Vector2d>::Log(const gfx::Vector2d& v, std::string* l) { 160 void ParamTraits<gfx::Vector2d>::Log(const gfx::Vector2d& v, std::string* l) {
160 l->append(base::StringPrintf("(%d, %d)", v.x(), v.y())); 161 l->append(base::StringPrintf("(%d, %d)", v.x(), v.y()));
161 } 162 }
162 163
163 void ParamTraits<gfx::Vector2dF>::Write(Message* m, const gfx::Vector2dF& p) { 164 void ParamTraits<gfx::Vector2dF>::Write(Message* m, const gfx::Vector2dF& p) {
164 float values[2] = { p.x(), p.y() }; 165 float values[2] = { p.x(), p.y() };
165 m->WriteBytes(&values, sizeof(float) * 2); 166 m->WriteBytes(&values, sizeof(float) * 2);
166 } 167 }
167 168
168 bool ParamTraits<gfx::Vector2dF>::Read(const Message* m, 169 bool ParamTraits<gfx::Vector2dF>::Read(const Message* m,
169 PickleIterator* iter, 170 base::PickleIterator* iter,
170 gfx::Vector2dF* r) { 171 gfx::Vector2dF* r) {
171 const char* char_values; 172 const char* char_values;
172 if (!iter->ReadBytes(&char_values, sizeof(float) * 2)) 173 if (!iter->ReadBytes(&char_values, sizeof(float) * 2))
173 return false; 174 return false;
174 const float* values = reinterpret_cast<const float*>(char_values); 175 const float* values = reinterpret_cast<const float*>(char_values);
175 r->set_x(values[0]); 176 r->set_x(values[0]);
176 r->set_y(values[1]); 177 r->set_y(values[1]);
177 return true; 178 return true;
178 } 179 }
179 180
180 void ParamTraits<gfx::Vector2dF>::Log(const gfx::Vector2dF& v, std::string* l) { 181 void ParamTraits<gfx::Vector2dF>::Log(const gfx::Vector2dF& v, std::string* l) {
181 l->append(base::StringPrintf("(%f, %f)", v.x(), v.y())); 182 l->append(base::StringPrintf("(%f, %f)", v.x(), v.y()));
182 } 183 }
183 184
184 void ParamTraits<gfx::Rect>::Write(Message* m, const gfx::Rect& p) { 185 void ParamTraits<gfx::Rect>::Write(Message* m, const gfx::Rect& p) {
185 int values[4] = { p.x(), p.y(), p.width(), p.height() }; 186 int values[4] = { p.x(), p.y(), p.width(), p.height() };
186 m->WriteBytes(&values, sizeof(int) * 4); 187 m->WriteBytes(&values, sizeof(int) * 4);
187 } 188 }
188 189
189 bool ParamTraits<gfx::Rect>::Read(const Message* m, 190 bool ParamTraits<gfx::Rect>::Read(const Message* m,
190 PickleIterator* iter, 191 base::PickleIterator* iter,
191 gfx::Rect* r) { 192 gfx::Rect* r) {
192 const char* char_values; 193 const char* char_values;
193 if (!iter->ReadBytes(&char_values, sizeof(int) * 4)) 194 if (!iter->ReadBytes(&char_values, sizeof(int) * 4))
194 return false; 195 return false;
195 const int* values = reinterpret_cast<const int*>(char_values); 196 const int* values = reinterpret_cast<const int*>(char_values);
196 if (values[2] < 0 || values[3] < 0) 197 if (values[2] < 0 || values[3] < 0)
197 return false; 198 return false;
198 r->SetRect(values[0], values[1], values[2], values[3]); 199 r->SetRect(values[0], values[1], values[2], values[3]);
199 return true; 200 return true;
200 } 201 }
201 202
202 void ParamTraits<gfx::Rect>::Log(const gfx::Rect& p, std::string* l) { 203 void ParamTraits<gfx::Rect>::Log(const gfx::Rect& p, std::string* l) {
203 l->append(base::StringPrintf("(%d, %d, %d, %d)", p.x(), p.y(), 204 l->append(base::StringPrintf("(%d, %d, %d, %d)", p.x(), p.y(),
204 p.width(), p.height())); 205 p.width(), p.height()));
205 } 206 }
206 207
207 void ParamTraits<gfx::RectF>::Write(Message* m, const gfx::RectF& p) { 208 void ParamTraits<gfx::RectF>::Write(Message* m, const gfx::RectF& p) {
208 float values[4] = { p.x(), p.y(), p.width(), p.height() }; 209 float values[4] = { p.x(), p.y(), p.width(), p.height() };
209 m->WriteBytes(&values, sizeof(float) * 4); 210 m->WriteBytes(&values, sizeof(float) * 4);
210 } 211 }
211 212
212 bool ParamTraits<gfx::RectF>::Read(const Message* m, 213 bool ParamTraits<gfx::RectF>::Read(const Message* m,
213 PickleIterator* iter, 214 base::PickleIterator* iter,
214 gfx::RectF* r) { 215 gfx::RectF* r) {
215 const char* char_values; 216 const char* char_values;
216 if (!iter->ReadBytes(&char_values, sizeof(float) * 4)) 217 if (!iter->ReadBytes(&char_values, sizeof(float) * 4))
217 return false; 218 return false;
218 const float* values = reinterpret_cast<const float*>(char_values); 219 const float* values = reinterpret_cast<const float*>(char_values);
219 r->SetRect(values[0], values[1], values[2], values[3]); 220 r->SetRect(values[0], values[1], values[2], values[3]);
220 return true; 221 return true;
221 } 222 }
222 223
223 void ParamTraits<gfx::RectF>::Log(const gfx::RectF& p, std::string* l) { 224 void ParamTraits<gfx::RectF>::Log(const gfx::RectF& p, std::string* l) {
224 l->append(base::StringPrintf("(%f, %f, %f, %f)", p.x(), p.y(), 225 l->append(base::StringPrintf("(%f, %f, %f, %f)", p.x(), p.y(),
225 p.width(), p.height())); 226 p.width(), p.height()));
226 } 227 }
227 228
228 void ParamTraits<SkBitmap>::Write(Message* m, const SkBitmap& p) { 229 void ParamTraits<SkBitmap>::Write(Message* m, const SkBitmap& p) {
229 size_t fixed_size = sizeof(SkBitmap_Data); 230 size_t fixed_size = sizeof(SkBitmap_Data);
230 SkBitmap_Data bmp_data; 231 SkBitmap_Data bmp_data;
231 bmp_data.InitSkBitmapDataForTransfer(p); 232 bmp_data.InitSkBitmapDataForTransfer(p);
232 m->WriteData(reinterpret_cast<const char*>(&bmp_data), 233 m->WriteData(reinterpret_cast<const char*>(&bmp_data),
233 static_cast<int>(fixed_size)); 234 static_cast<int>(fixed_size));
234 size_t pixel_size = p.getSize(); 235 size_t pixel_size = p.getSize();
235 SkAutoLockPixels p_lock(p); 236 SkAutoLockPixels p_lock(p);
236 m->WriteData(reinterpret_cast<const char*>(p.getPixels()), 237 m->WriteData(reinterpret_cast<const char*>(p.getPixels()),
237 static_cast<int>(pixel_size)); 238 static_cast<int>(pixel_size));
238 } 239 }
239 240
240 bool ParamTraits<SkBitmap>::Read(const Message* m, 241 bool ParamTraits<SkBitmap>::Read(const Message* m,
241 PickleIterator* iter, 242 base::PickleIterator* iter,
242 SkBitmap* r) { 243 SkBitmap* r) {
243 const char* fixed_data; 244 const char* fixed_data;
244 int fixed_data_size = 0; 245 int fixed_data_size = 0;
245 if (!iter->ReadData(&fixed_data, &fixed_data_size) || 246 if (!iter->ReadData(&fixed_data, &fixed_data_size) ||
246 (fixed_data_size <= 0)) { 247 (fixed_data_size <= 0)) {
247 NOTREACHED(); 248 NOTREACHED();
248 return false; 249 return false;
249 } 250 }
250 if (fixed_data_size != sizeof(SkBitmap_Data)) 251 if (fixed_data_size != sizeof(SkBitmap_Data))
251 return false; // Message is malformed. 252 return false; // Message is malformed.
(...skipping 13 matching lines...) Expand all
265 void ParamTraits<SkBitmap>::Log(const SkBitmap& p, std::string* l) { 266 void ParamTraits<SkBitmap>::Log(const SkBitmap& p, std::string* l) {
266 l->append("<SkBitmap>"); 267 l->append("<SkBitmap>");
267 } 268 }
268 269
269 void ParamTraits<gfx::Range>::Write(Message* m, const gfx::Range& r) { 270 void ParamTraits<gfx::Range>::Write(Message* m, const gfx::Range& r) {
270 m->WriteSizeT(r.start()); 271 m->WriteSizeT(r.start());
271 m->WriteSizeT(r.end()); 272 m->WriteSizeT(r.end());
272 } 273 }
273 274
274 bool ParamTraits<gfx::Range>::Read(const Message* m, 275 bool ParamTraits<gfx::Range>::Read(const Message* m,
275 PickleIterator* iter, 276 base::PickleIterator* iter,
276 gfx::Range* r) { 277 gfx::Range* r) {
277 size_t start, end; 278 size_t start, end;
278 if (!iter->ReadSizeT(&start) || !iter->ReadSizeT(&end)) 279 if (!iter->ReadSizeT(&start) || !iter->ReadSizeT(&end))
279 return false; 280 return false;
280 r->set_start(start); 281 r->set_start(start);
281 r->set_end(end); 282 r->set_end(end);
282 return true; 283 return true;
283 } 284 }
284 285
285 void ParamTraits<gfx::Range>::Log(const gfx::Range& r, std::string* l) { 286 void ParamTraits<gfx::Range>::Log(const gfx::Range& r, std::string* l) {
286 l->append(base::StringPrintf("(%" PRIuS ", %" PRIuS ")", r.start(), r.end())); 287 l->append(base::StringPrintf("(%" PRIuS ", %" PRIuS ")", r.start(), r.end()));
287 } 288 }
288 289
289 290
290 } // namespace IPC 291 } // namespace IPC
OLDNEW
« no previous file with comments | « ui/base/dragdrop/os_exchange_data_unittest.cc ('k') | ui/views/controls/textfield/textfield_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698