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

Unified Diff: content/common/cc_messages.cc

Issue 1152473006: cc: Remove DrawQuad::IterateResoruces (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 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 side-by-side diff with in-line comments
Download patch
Index: content/common/cc_messages.cc
diff --git a/content/common/cc_messages.cc b/content/common/cc_messages.cc
index e7c2ad21fdee1ab412f3766a0991cd0fb750f9b0..ad7d4470a97e3dab719783a2db50e89adb9ea453 100644
--- a/content/common/cc_messages.cc
+++ b/content/common/cc_messages.cc
@@ -6,6 +6,7 @@
#include "cc/output/compositor_frame.h"
#include "cc/output/filter_operations.h"
+#include "cc/quads/draw_quad.h"
#include "cc/quads/largest_draw_quad.h"
#include "cc/quads/render_pass_id.h"
#include "content/public/common/common_param_traits.h"
@@ -808,4 +809,43 @@ void ParamTraits<cc::SoftwareFrameData>::Log(const param_type& p,
l->append(")");
}
+void ParamTraits<cc::DrawQuad::Resources>::Write(Message* m,
+ const param_type& p) {
+ DCHECK(p.IsCountValid());
+
+ size_t to_reserve = sizeof(p.count) + p.count * sizeof(p.ids[0]);
danakj 2015/05/28 23:00:15 space for this is already reserved in ReserveSizeF
vmpstr 2015/05/28 23:35:52 Hmm makes sense. Done.
+ m->Reserve(to_reserve);
+
+ WriteParam(m, p.count);
+ for (size_t i = 0; i < p.count; ++i)
+ WriteParam(m, p.ids[i]);
+}
+
+bool ParamTraits<cc::DrawQuad::Resources>::Read(const Message* m,
+ PickleIterator* iter,
+ param_type* p) {
+ if (!ReadParam(m, iter, &p->count))
+ return false;
+ if (!p->IsCountValid())
+ return false;
+ for (size_t i = 0; i < p->count; ++i) {
+ if (!ReadParam(m, iter, &p->ids[i]))
+ return false;
+ }
+ return true;
+}
+
+void ParamTraits<cc::DrawQuad::Resources>::Log(const param_type& p,
+ std::string* l) {
+ l->append("DrawQuad::Resources(");
+ LogParam(p.count, l);
+ l->append(", [");
+ for (size_t i = 0; i < p.count; ++i) {
+ LogParam(p.ids[i], l);
+ if (i < (p.count - 1))
+ l->append(", ");
+ }
+ l->append("])");
+}
+
} // namespace IPC

Powered by Google App Engine
This is Rietveld 408576698