lichao
2021-04-15 c64c54d8e75b9354dc49a7b6b2d326e7dd59eb37
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#ifndef BH_API_WRAPPER_O81WKNXI
#define BH_API_WRAPPER_O81WKNXI
 
#ifdef __cplusplus
extern "C" {
#endif
 
struct BHSrcInfo;
struct BHServerCallbackTag;
 
bool BHRegister(const void *proc_info,
                const int proc_info_len,
                void **reply,
                int *reply_len,
                const int timeout_ms);
 
bool BHRegisterTopics(const void *topics,
                      const int topics_len,
                      void **reply,
                      int *reply_len,
                      const int timeout_ms);
 
bool BHSubscribeTopics(const void *topics,
                       const int topics_len,
                       void **reply,
                       int *reply_len,
                       const int timeout_ms);
 
typedef void (*FSubDataCallback)(const void *proc_id,
                                 const int proc_id_len,
                                 const void *data,
                                 const int data_len);
 
typedef void (*FServerCallback)(const void *proc_id,
                                const int proc_id_len,
                                const void *data,
                                const int data_len,
                                BHServerCallbackTag *tag);
 
typedef void (*FClientCallback)(const void *proc_id,
                                const int proc_id_len,
                                const void *msg_id,
                                const int msg_id_len,
                                const void *data,
                                const int data_len);
 
void BHStartWorker(FServerCallback server_cb, FSubDataCallback sub_cb, FClientCallback client_cb);
bool BHServerCallbackReply(const BHServerCallbackTag *tag,
                           const void *data,
                           const int data_len);
 
bool BHHeartBeatEasy(const int timeout_ms);
bool BHHeartBeat(const void *proc_info,
                 const int proc_info_len,
                 void **reply,
                 int *reply_len,
                 const int timeout_ms);
 
bool BHPublish(const void *msgpub,
               const int msgpub_len,
               const int timeout_ms);
 
bool BHReadSub(const void *proc_id,
               const int proc_id_len,
               void **msgpub,
               int *msgpub_len,
               const int timeout_ms);
 
bool BHAsyncRequest(const void *request,
                    const int request_len,
                    void **msg_id,
                    int *msg_id_len);
 
bool BHRequest(const void *request,
               const int request_len,
               void **proc_id,
               int *proc_id_len,
               void **reply,
               int *reply_len,
               const int timeout_ms);
 
bool BHReadRequest(void **proc_id,
                   int *proc_id_len,
                   void **request,
                   int *request_len,
                   BHSrcInfo **src,
                   const int timeout_ms);
 
bool BHSendReply(BHSrcInfo *src,
                 const void *reply,
                 const int reply_len);
 
// int BHCleanUp();
 
void BHFree(void *buf, int size);
 
int BHGetLastError(void **msg, int &msg_len);
 
#ifdef __cplusplus
}
#endif
#endif /* end of include guard: BH_API_WRAPPER_O81WKNXI */