1 // Copyright (c) 2012 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_SERIALIZED_FLASH_MENU_H_ 6 #define PPAPI_PROXY_SERIALIZED_FLASH_MENU_H_ 7 8 #include <string> 9 #include <vector> 10 11 #include "base/basictypes.h" 12 #include "ppapi/proxy/ppapi_proxy_export.h" 13 14 class PickleIterator; 15 16 struct PP_Flash_Menu; 17 18 namespace IPC { 19 class Message; 20 } 21 22 namespace ppapi { 23 namespace proxy { 24 25 class PPAPI_PROXY_EXPORT SerializedFlashMenu { 26 public: 27 SerializedFlashMenu(); 28 ~SerializedFlashMenu(); 29 30 bool SetPPMenu(const PP_Flash_Menu* menu); 31 pp_menu()32 const PP_Flash_Menu* pp_menu() const { return pp_menu_; } 33 34 void WriteToMessage(IPC::Message* m) const; 35 bool ReadFromMessage(const IPC::Message* m, PickleIterator* iter); 36 37 private: 38 const PP_Flash_Menu* pp_menu_; 39 bool own_menu_; 40 DISALLOW_COPY_AND_ASSIGN(SerializedFlashMenu); 41 }; 42 43 } // namespace proxy 44 } // namespace ppapi 45 46 #endif // PPAPI_PROXY_SERIALIZED_FLASH_MENU_H_ 47