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

Unified Diff: ppapi/proxy/ppapi_param_traits.cc

Issue 6334016: Refactor PPAPI proxy resource handling to maintain which host they came from,... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 9 years, 11 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
« no previous file with comments | « ppapi/proxy/ppapi_param_traits.h ('k') | ppapi/proxy/ppapi_proxy_test.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ppapi/proxy/ppapi_param_traits.cc
===================================================================
--- ppapi/proxy/ppapi_param_traits.cc (revision 72840)
+++ ppapi/proxy/ppapi_param_traits.cc (working copy)
@@ -1,4 +1,4 @@
-// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
@@ -8,6 +8,7 @@
#include "ppapi/c/dev/pp_file_info_dev.h"
#include "ppapi/c/pp_resource.h"
+#include "ppapi/proxy/host_resource.h"
#include "ppapi/proxy/interface_proxy.h"
#include "ppapi/proxy/ppapi_messages.h"
#include "ppapi/proxy/serialized_var.h"
@@ -180,6 +181,36 @@
void ParamTraits<PP_Size>::Log(const param_type& p, std::string* l) {
}
+// PPBAudio_NotifyAudioStreamCreated_Params ------------------------------------
+
+// static
+void ParamTraits<pp::proxy::PPBAudio_NotifyAudioStreamCreated_Params>::Write(
+ Message* m,
+ const param_type& p) {
+ ParamTraits<pp::proxy::HostResource>::Write(m, p.audio_id);
+ ParamTraits<int32_t>::Write(m, p.result_code);
+ ParamTraits<PlatformFileForTransit>::Write(m, p.socket_handle);
+ ParamTraits<int32_t>::Write(m, p.length);
+}
+
+// static
+bool ParamTraits<pp::proxy::PPBAudio_NotifyAudioStreamCreated_Params>::Read(
+ const Message* m,
+ void** iter,
+ param_type* r) {
+ return
+ ParamTraits<pp::proxy::HostResource>::Read(m, iter, &r->audio_id) &&
+ ParamTraits<int32_t>::Read(m, iter, &r->result_code) &&
+ ParamTraits<PlatformFileForTransit>::Read(m, iter, &r->socket_handle) &&
+ ParamTraits<int32_t>::Read(m, iter, &r->length);
+}
+
+// static
+void ParamTraits<pp::proxy::PPBAudio_NotifyAudioStreamCreated_Params>::Log(
+ const param_type& p,
+ std::string* l) {
+}
+
// PPBFlash_DrawGlyphs_Params --------------------------------------------------
// static
@@ -187,7 +218,7 @@
Message* m,
const param_type& p) {
ParamTraits<PP_Instance>::Write(m, p.instance);
- ParamTraits<PP_Resource>::Write(m, p.pp_image_data);
+ ParamTraits<pp::proxy::HostResource>::Write(m, p.image_data);
ParamTraits<pp::proxy::SerializedFontDescription>::Write(m, p.font_desc);
ParamTraits<uint32_t>::Write(m, p.color);
ParamTraits<PP_Point>::Write(m, p.position);
@@ -212,7 +243,8 @@
param_type* r) {
return
ParamTraits<PP_Instance>::Read(m, iter, &r->instance) &&
- ParamTraits<PP_Resource>::Read(m, iter, &r->pp_image_data) &&
+ ParamTraits<pp::proxy::HostResource>::Read(m, iter,
+ &r->image_data) &&
ParamTraits<pp::proxy::SerializedFontDescription>::Read(m, iter,
&r->font_desc) &&
ParamTraits<uint32_t>::Read(m, iter, &r->color) &&
@@ -244,8 +276,8 @@
void ParamTraits<pp::proxy::PPBFont_DrawTextAt_Params>::Write(
Message* m,
const param_type& p) {
- ParamTraits<PP_Resource>::Write(m, p.font);
- ParamTraits<PP_Resource>::Write(m, p.image_data);
+ ParamTraits<pp::proxy::HostResource>::Write(m, p.font);
+ ParamTraits<pp::proxy::HostResource>::Write(m, p.image_data);
ParamTraits<PP_Bool>::Write(m, p.text_is_rtl);
ParamTraits<PP_Bool>::Write(m, p.override_direction);
ParamTraits<PP_Point>::Write(m, p.position);
@@ -261,8 +293,9 @@
void** iter,
param_type* r) {
return
- ParamTraits<PP_Resource>::Read(m, iter, &r->font) &&
- ParamTraits<PP_Resource>::Read(m, iter, &r->image_data) &&
+ ParamTraits<pp::proxy::HostResource>::Read(m, iter, &r->font) &&
+ ParamTraits<pp::proxy::HostResource>::Read(m, iter,
+ &r->image_data) &&
ParamTraits<PP_Bool>::Read(m, iter, &r->text_is_rtl) &&
ParamTraits<PP_Bool>::Read(m, iter, &r->override_direction) &&
ParamTraits<PP_Point>::Read(m, iter, &r->position) &&
@@ -278,6 +311,40 @@
std::string* l) {
}
+// PPBURLLoader_UpdateProgress_Params ------------------------------------------
+
+// static
+void ParamTraits<pp::proxy::PPBURLLoader_UpdateProgress_Params>::Write(
+ Message* m,
+ const param_type& p) {
+ ParamTraits<PP_Instance>::Write(m, p.instance);
+ ParamTraits<pp::proxy::HostResource>::Write(m, p.resource);
+ ParamTraits<int64_t>::Write(m, p.bytes_sent);
+ ParamTraits<int64_t>::Write(m, p.total_bytes_to_be_sent);
+ ParamTraits<int64_t>::Write(m, p.bytes_received);
+ ParamTraits<int64_t>::Write(m, p.total_bytes_to_be_received);
+}
+
+// static
+bool ParamTraits<pp::proxy::PPBURLLoader_UpdateProgress_Params>::Read(
+ const Message* m,
+ void** iter,
+ param_type* r) {
+ return
+ ParamTraits<PP_Instance>::Read(m, iter, &r->instance) &&
+ ParamTraits<pp::proxy::HostResource>::Read(m, iter, &r->resource) &&
+ ParamTraits<int64_t>::Read(m, iter, &r->bytes_sent) &&
+ ParamTraits<int64_t>::Read(m, iter, &r->total_bytes_to_be_sent) &&
+ ParamTraits<int64_t>::Read(m, iter, &r->bytes_received) &&
+ ParamTraits<int64_t>::Read(m, iter, &r->total_bytes_to_be_received);
+}
+
+// static
+void ParamTraits<pp::proxy::PPBURLLoader_UpdateProgress_Params>::Log(
+ const param_type& p,
+ std::string* l) {
+}
+
// SerializedDirEntry ----------------------------------------------------------
// static
@@ -300,26 +367,6 @@
std::string* l) {
}
-// SerializedVar ---------------------------------------------------------------
-
-// static
-void ParamTraits<pp::proxy::SerializedVar>::Write(Message* m,
- const param_type& p) {
- p.WriteToMessage(m);
-}
-
-// static
-bool ParamTraits<pp::proxy::SerializedVar>::Read(const Message* m,
- void** iter,
- param_type* r) {
- return r->ReadFromMessage(m, iter);
-}
-
-// static
-void ParamTraits<pp::proxy::SerializedVar>::Log(const param_type& p,
- std::string* l) {
-}
-
// pp::proxy::SerializedFontDescription ----------------------------------------
// static
@@ -358,6 +405,53 @@
std::string* l) {
}
+// HostResource ----------------------------------------------------------
+
+// static
+void ParamTraits<pp::proxy::HostResource>::Write(Message* m,
+ const param_type& p) {
+ ParamTraits<PP_Instance>::Write(m, p.instance());
+ ParamTraits<PP_Resource>::Write(m, p.host_resource());
+}
+
+// static
+bool ParamTraits<pp::proxy::HostResource>::Read(const Message* m,
+ void** iter,
+ param_type* r) {
+ PP_Instance instance;
+ PP_Resource resource;
+ if (!ParamTraits<PP_Instance>::Read(m, iter, &instance) ||
+ !ParamTraits<PP_Resource>::Read(m, iter, &resource))
+ return false;
+ r->SetHostResource(instance, resource);
+ return true;
+}
+
+// static
+void ParamTraits<pp::proxy::HostResource>::Log(const param_type& p,
+ std::string* l) {
+}
+
+// SerializedVar ---------------------------------------------------------------
+
+// static
+void ParamTraits<pp::proxy::SerializedVar>::Write(Message* m,
+ const param_type& p) {
+ p.WriteToMessage(m);
+}
+
+// static
+bool ParamTraits<pp::proxy::SerializedVar>::Read(const Message* m,
+ void** iter,
+ param_type* r) {
+ return r->ReadFromMessage(m, iter);
+}
+
+// static
+void ParamTraits<pp::proxy::SerializedVar>::Log(const param_type& p,
+ std::string* l) {
+}
+
// std::vector<SerializedVar> --------------------------------------------------
void ParamTraits< std::vector<pp::proxy::SerializedVar> >::Write(
« no previous file with comments | « ppapi/proxy/ppapi_param_traits.h ('k') | ppapi/proxy/ppapi_proxy_test.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698