Port Android relocation packer to chromium build
[chromium-blink-merge.git] / ppapi / proxy / ppb_var_deprecated_proxy.h
blob344ccd5f66f58a6c2e7578732c36d61a7041e45e
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef PPAPI_PROXY_PPB_VAR_DEPRECATED_PROXY_H_
6 #define PPAPI_PROXY_PPB_VAR_DEPRECATED_PROXY_H_
8 #include <vector>
10 #include "base/memory/weak_ptr.h"
11 #include "ppapi/c/pp_instance.h"
12 #include "ppapi/proxy/interface_proxy.h"
14 struct PPB_Var_Deprecated;
16 namespace ppapi {
17 namespace proxy {
19 class SerializedVar;
20 class SerializedVarReceiveInput;
21 class SerializedVarVectorOutParam;
22 class SerializedVarVectorReceiveInput;
23 class SerializedVarOutParam;
24 class SerializedVarReturnValue;
26 class PPB_Var_Deprecated_Proxy : public InterfaceProxy {
27 public:
28 explicit PPB_Var_Deprecated_Proxy(Dispatcher* dispatcher);
29 virtual ~PPB_Var_Deprecated_Proxy();
31 static const PPB_Var_Deprecated* GetProxyInterface();
33 // InterfaceProxy implementation.
34 virtual bool OnMessageReceived(const IPC::Message& msg);
36 private:
37 // Message handlers.
38 void OnMsgAddRefObject(int64 object_id);
39 void OnMsgReleaseObject(int64 object_id);
40 void OnMsgHasProperty(SerializedVarReceiveInput var,
41 SerializedVarReceiveInput name,
42 SerializedVarOutParam exception,
43 PP_Bool* result);
44 void OnMsgHasMethodDeprecated(SerializedVarReceiveInput var,
45 SerializedVarReceiveInput name,
46 SerializedVarOutParam exception,
47 PP_Bool* result);
48 void OnMsgGetProperty(SerializedVarReceiveInput var,
49 SerializedVarReceiveInput name,
50 SerializedVarOutParam exception,
51 SerializedVarReturnValue result);
52 void OnMsgEnumerateProperties(
53 SerializedVarReceiveInput var,
54 SerializedVarVectorOutParam props,
55 SerializedVarOutParam exception);
56 void OnMsgSetPropertyDeprecated(SerializedVarReceiveInput var,
57 SerializedVarReceiveInput name,
58 SerializedVarReceiveInput value,
59 SerializedVarOutParam exception);
60 void OnMsgDeleteProperty(SerializedVarReceiveInput var,
61 SerializedVarReceiveInput name,
62 SerializedVarOutParam exception,
63 PP_Bool* result);
64 void OnMsgCall(SerializedVarReceiveInput object,
65 SerializedVarReceiveInput this_object,
66 SerializedVarReceiveInput method_name,
67 SerializedVarVectorReceiveInput arg_vector,
68 SerializedVarOutParam exception,
69 SerializedVarReturnValue result);
70 void OnMsgCallDeprecated(SerializedVarReceiveInput object,
71 SerializedVarReceiveInput method_name,
72 SerializedVarVectorReceiveInput arg_vector,
73 SerializedVarOutParam exception,
74 SerializedVarReturnValue result);
75 void OnMsgConstruct(SerializedVarReceiveInput var,
76 SerializedVarVectorReceiveInput arg_vector,
77 SerializedVarOutParam exception,
78 SerializedVarReturnValue result);
79 void OnMsgIsInstanceOfDeprecated(SerializedVarReceiveInput var,
80 int64 ppp_class,
81 int64* ppp_class_data,
82 PP_Bool* result);
83 void OnMsgCreateObjectDeprecated(PP_Instance instance,
84 int64 ppp_class,
85 int64 ppp_class_data,
86 SerializedVarReturnValue result);
88 // Call in the host for messages that can be reentered.
89 void SetAllowPluginReentrancy();
91 void DoReleaseObject(int64 object_id);
93 const PPB_Var_Deprecated* ppb_var_impl_;
95 base::WeakPtrFactory<PPB_Var_Deprecated_Proxy> task_factory_;
97 DISALLOW_COPY_AND_ASSIGN(PPB_Var_Deprecated_Proxy);
100 } // namespace proxy
101 } // namespace ppapi
103 #endif // PPAPI_PROXY_PPB_VAR_DEPRECATED_PROXY_H_