1 // Copyright 2014 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. 4 5 #ifndef PPAPI_PROXY_PPP_PDF_PROXY_H_ 6 #define PPAPI_PROXY_PPP_PDF_PROXY_H_ 7 8 #include "ppapi/c/private/ppp_pdf.h" 9 #include "ppapi/proxy/interface_proxy.h" 10 11 namespace ppapi { 12 13 namespace proxy { 14 15 class PPP_Pdf_Proxy : public InterfaceProxy { 16 public: 17 PPP_Pdf_Proxy(Dispatcher* dispatcher); 18 virtual ~PPP_Pdf_Proxy(); 19 20 static const PPP_Pdf* GetProxyInterface(); 21 22 // InterfaceProxy implementation. 23 virtual bool OnMessageReceived(const IPC::Message& msg); 24 25 private: 26 // Message handlers. 27 void OnPluginMsgRotate(PP_Instance instance, bool clockwise); 28 29 // When this proxy is in the plugin side, this value caches the interface 30 // pointer so we don't have to retrieve it from the dispatcher each time. 31 // In the host, this value is always NULL. 32 const PPP_Pdf* ppp_pdf_; 33 34 DISALLOW_COPY_AND_ASSIGN(PPP_Pdf_Proxy); 35 }; 36 37 } // namespace proxy 38 } // namespace ppapi 39 40 #endif // PPAPI_PROXY_PPP_PDF_PROXY_H_ 41