Index: ppapi/proxy/ppb_core_proxy.h |
=================================================================== |
--- ppapi/proxy/ppb_core_proxy.h (revision 100758) |
+++ ppapi/proxy/ppb_core_proxy.h (working copy) |
@@ -8,6 +8,7 @@ |
#include "ppapi/c/pp_completion_callback.h" |
#include "ppapi/c/pp_resource.h" |
#include "ppapi/c/pp_var.h" |
+#include "ppapi/c/ppb_core.h" |
#include "ppapi/proxy/interface_proxy.h" |
#include "ppapi/shared_impl/host_resource.h" |
@@ -18,22 +19,25 @@ |
class PPB_Core_Proxy : public InterfaceProxy { |
public: |
- PPB_Core_Proxy(Dispatcher* dispatcher, const void* target_interface); |
+ PPB_Core_Proxy(Dispatcher* dispatcher); |
virtual ~PPB_Core_Proxy(); |
- static const Info* GetInfo(); |
+ static const PPB_Core* GetPPB_Core_Interface(); |
- const PPB_Core* ppb_core_target() const { |
- return reinterpret_cast<const PPB_Core*>(target_interface()); |
- } |
- |
// InterfaceProxy implementation. |
virtual bool OnMessageReceived(const IPC::Message& msg); |
+ static const InterfaceID kInterfaceID = INTERFACE_ID_PPB_CORE; |
+ |
private: |
// Message handlers. |
void OnMsgAddRefResource(const ppapi::HostResource& resource); |
void OnMsgReleaseResource(const ppapi::HostResource& resource); |
+ |
+ // When this proxy is in the host side, this value caches the interface |
+ // pointer so we don't have to retrieve it from the dispatcher each time. |
+ // In the plugin, this value is always NULL. |
+ const PPB_Core* ppb_core_impl_; |
}; |
} // namespace proxy |