| OLD | NEW | 
|---|
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 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 | 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 #ifndef PPAPI_PROXY_PROXY_OBJECT_VAR_H_ | 5 #ifndef PPAPI_PROXY_PROXY_OBJECT_VAR_H_ | 
| 6 #define PPAPI_PROXY_PROXY_OBJECT_VAR_H_ | 6 #define PPAPI_PROXY_PROXY_OBJECT_VAR_H_ | 
| 7 | 7 | 
| 8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" | 
| 9 #include "ppapi/proxy/ppapi_proxy_export.h" | 9 #include "ppapi/proxy/ppapi_proxy_export.h" | 
| 10 #include "ppapi/shared_impl/var.h" | 10 #include "ppapi/shared_impl/var.h" | 
| 11 | 11 | 
| 12 namespace ppapi { | 12 namespace ppapi { | 
| 13 | 13 | 
| 14 namespace proxy { | 14 namespace proxy { | 
| 15 class PluginDispatcher; | 15 class PluginDispatcher; | 
| 16 }  // namespace proxy | 16 }  // namespace proxy | 
| 17 | 17 | 
| 18 // Tracks a reference to an object var in the plugin side of the proxy. This | 18 // Tracks a reference to an object var in the plugin side of the proxy. This | 
| 19 // just stores the dispatcher and host var ID, and provides the interface for | 19 // just stores the dispatcher and host var ID, and provides the interface for | 
| 20 // integrating this with PP_Var creation. | 20 // integrating this with PP_Var creation. | 
| 21 class PPAPI_PROXY_EXPORT ProxyObjectVar : public Var { | 21 class PPAPI_PROXY_EXPORT ProxyObjectVar : public Var { | 
| 22  public: | 22  public: | 
| 23   ProxyObjectVar(proxy::PluginDispatcher* dispatcher, | 23   ProxyObjectVar(proxy::PluginDispatcher* dispatcher, | 
| 24                  int32 host_var_id); | 24                  int32 host_var_id); | 
| 25 | 25 | 
| 26   virtual ~ProxyObjectVar(); | 26   ~ProxyObjectVar() override; | 
| 27 | 27 | 
| 28   // Var overrides. | 28   // Var overrides. | 
| 29   virtual ProxyObjectVar* AsProxyObjectVar() override; | 29   ProxyObjectVar* AsProxyObjectVar() override; | 
| 30   virtual PP_VarType GetType() const override; | 30   PP_VarType GetType() const override; | 
| 31 | 31 | 
| 32   proxy::PluginDispatcher* dispatcher() const { return dispatcher_; } | 32   proxy::PluginDispatcher* dispatcher() const { return dispatcher_; } | 
| 33   int32 host_var_id() const { return host_var_id_; } | 33   int32 host_var_id() const { return host_var_id_; } | 
| 34 | 34 | 
| 35   void* user_data() const { return user_data_; } | 35   void* user_data() const { return user_data_; } | 
| 36   void set_user_data(void* ud) { user_data_ = ud; } | 36   void set_user_data(void* ud) { user_data_ = ud; } | 
| 37 | 37 | 
| 38   // Expose AssignVarID on Var so the PluginResourceTracker can call us when | 38   // Expose AssignVarID on Var so the PluginResourceTracker can call us when | 
| 39   // it's creating IDs. | 39   // it's creating IDs. | 
| 40   void AssignVarID(int32 id); | 40   void AssignVarID(int32 id); | 
| 41 | 41 | 
| 42   void clear_dispatcher() { dispatcher_ = NULL; } | 42   void clear_dispatcher() { dispatcher_ = NULL; } | 
| 43 | 43 | 
| 44  private: | 44  private: | 
| 45   proxy::PluginDispatcher* dispatcher_; | 45   proxy::PluginDispatcher* dispatcher_; | 
| 46   int32 host_var_id_; | 46   int32 host_var_id_; | 
| 47 | 47 | 
| 48   // When this object is created as representing a var implemented by the | 48   // When this object is created as representing a var implemented by the | 
| 49   // plugin, this stores the user data so that we can look it up later. See | 49   // plugin, this stores the user data so that we can look it up later. See | 
| 50   // PluginVarTracker. | 50   // PluginVarTracker. | 
| 51   void* user_data_; | 51   void* user_data_; | 
| 52 | 52 | 
| 53   DISALLOW_COPY_AND_ASSIGN(ProxyObjectVar); | 53   DISALLOW_COPY_AND_ASSIGN(ProxyObjectVar); | 
| 54 }; | 54 }; | 
| 55 | 55 | 
| 56 }  // namespace ppapi | 56 }  // namespace ppapi | 
| 57 | 57 | 
| 58 #endif  // PPAPI_PROXY_PROXY_OBJECT_VAR_H_ | 58 #endif  // PPAPI_PROXY_PROXY_OBJECT_VAR_H_ | 
| OLD | NEW | 
|---|