• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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