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 6 #ifndef PPAPI_C_DEV_IMPL_PPB_MESSAGING_DEPRECATED_H_ 7 #define PPAPI_C_DEV_IMPL_PPB_MESSAGING_DEPRECATED_H_ 8 9 #include "ppapi/c/pp_instance.h" 10 #include "ppapi/c/pp_resource.h" 11 #include "ppapi/c/pp_stdint.h" 12 #include "ppapi/c/pp_var.h" 13 14 /* dev, deprecated */ 15 #define PPB_MESSAGING_INTERFACE_1_1_DEPRECATED "PPB_Messaging;1.1" 16 17 /** 18 * This file defines a dev-channel-only API, PPB_Messaging;1.1 that is 19 * deprecated, but which still should provide ABI compatibility for a little 20 * bit longer to give time to transition off of it. The header is *not* provided 21 * in ppapi/c/ppb_messaging.h, in order to push clients to the new API, 22 * version 1.2. 23 * TODO(dmichael): Delete this API altogether when all uses are gone. 24 * crbug.com/414398 25 */ 26 struct PPP_MessageHandler_0_1_Deprecated { /* dev */ 27 void (*HandleMessage)(PP_Instance instance, 28 void* user_data, 29 struct PP_Var message); 30 struct PP_Var (*HandleBlockingMessage)(PP_Instance instance, 31 void* user_data, 32 struct PP_Var message); 33 void (*Destroy)(PP_Instance instance, void* user_data); 34 }; 35 36 struct PPB_Messaging_1_1_Deprecated { /* dev */ 37 void (*PostMessage)(PP_Instance instance, struct PP_Var message); 38 int32_t (*RegisterMessageHandler)( 39 PP_Instance instance, 40 void* user_data, 41 const struct PPP_MessageHandler_0_1_Deprecated* handler, 42 PP_Resource message_loop); 43 void (*UnregisterMessageHandler)(PP_Instance instance); 44 }; 45 46 #endif /* PPAPI_C_DEV_IMPL_PPB_MESSAGING_DEPRECATED_H_ */ 47 48