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

Unified Diff: ppapi/proxy/plugin_var_serialization_rules.h

Issue 4096008: Var serialization-related proxy stuff. This allows vars to be sent over IPC... (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years, 1 month 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/host_var_serialization_rules.cc ('k') | ppapi/proxy/plugin_var_serialization_rules.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ppapi/proxy/plugin_var_serialization_rules.h
===================================================================
--- ppapi/proxy/plugin_var_serialization_rules.h (revision 0)
+++ ppapi/proxy/plugin_var_serialization_rules.h (revision 0)
@@ -0,0 +1,44 @@
+// Copyright (c) 2010 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.
+
+#ifndef PPAPI_PROXY_PLUGIN_VAR_SERIALIZATION_RULES_H_
+#define PPAPI_PROXY_PLUGIN_VAR_SERIALIZATION_RULES_H_
+
+#include "base/basictypes.h"
+#include "ppapi/proxy/var_serialization_rules.h"
+
+namespace pp {
+namespace proxy {
+
+class PluginVarTracker;
+
+// Implementation of the VarSerialization interface for the plugin.
+class PluginVarSerializationRules : public VarSerializationRules {
+ public:
+ // This class will use the given non-owning pointer to the var tracker to
+ // handle object refcounting and string conversion.
+ PluginVarSerializationRules(PluginVarTracker* tracker);
+ ~PluginVarSerializationRules();
+
+ // VarSerialization implementation.
+ virtual void SendCallerOwned(const PP_Var& var, std::string* str_val);
+ virtual PP_Var BeginReceiveCallerOwned(const PP_Var& var,
+ const std::string* str_val);
+ virtual void EndReceiveCallerOwned(const PP_Var& var);
+ virtual PP_Var ReceivePassRef(const PP_Var& var,
+ const std::string& str_val);
+ virtual void BeginSendPassRef(const PP_Var& var, std::string* str_val);
+ virtual void EndSendPassRef(const PP_Var& var);
+ virtual void ReleaseObjectRef(const PP_Var& var);
+
+ private:
+ PluginVarTracker* var_tracker_;
+
+ DISALLOW_COPY_AND_ASSIGN(PluginVarSerializationRules);
+};
+
+} // namespace proxy
+} // namespace pp
+
+#endif // PPAPI_PROXY_PLUGIN_VAR_SERIALIZATION_RULES_H_
Property changes on: ppapi/proxy/plugin_var_serialization_rules.h
___________________________________________________________________
Added: svn:eol-style
+ LF
« no previous file with comments | « ppapi/proxy/host_var_serialization_rules.cc ('k') | ppapi/proxy/plugin_var_serialization_rules.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698