From 34cd75f77d0ca94dbdba4e6cc9451fe4d33e78b3 Mon Sep 17 00:00:00 2001
From: lichao <lichao@aiotlink.com>
Date: 星期三, 19 五月 2021 19:14:13 +0800
Subject: [PATCH] add api BHQueryProcs.

---
 src/bh_api.h |   52 +++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 37 insertions(+), 15 deletions(-)

diff --git a/src/bh_api.h b/src/bh_api.h
index 39b4cc6..3b77da5 100644
--- a/src/bh_api.h
+++ b/src/bh_api.h
@@ -24,11 +24,33 @@
                int *reply_len,
                const int timeout_ms);
 
+int BHUnregister(const void *proc_info,
+                 const int proc_info_len,
+                 void **reply,
+                 int *reply_len,
+                 const int timeout_ms);
+
 int BHRegisterTopics(const void *topics,
                      const int topics_len,
                      void **reply,
                      int *reply_len,
                      const int timeout_ms);
+
+int BHQueryTopicAddress(const void *remote,
+                        const int remote_len,
+                        const void *topics,
+                        const int topics_len,
+                        void **reply,
+                        int *reply_len,
+                        const int timeout_ms);
+
+int BHQueryProcs(const void *remote,
+                 const int remote_len,
+                 const void *query,
+                 const int query_len,
+                 void **reply,
+                 int *reply_len,
+                 const int timeout_ms);
 
 int BHSubscribeTopics(const void *topics,
                       const int topics_len,
@@ -37,28 +59,24 @@
                       const int timeout_ms);
 
 typedef void (*FSubDataCallback)(const void *proc_id,
-                                 const int proc_id_len,
+                                 int proc_id_len,
                                  const void *data,
-                                 const int data_len);
+                                 int data_len);
 
 typedef void (*FServerCallback)(const void *proc_id,
-                                const int proc_id_len,
+                                int proc_id_len,
                                 const void *data,
-                                const int data_len,
-                                const void *tag);
+                                int data_len,
+                                void *src);
 
 typedef void (*FClientCallback)(const void *proc_id,
-                                const int proc_id_len,
+                                int proc_id_len,
                                 const void *msg_id,
-                                const int msg_id_len,
+                                int msg_id_len,
                                 const void *data,
-                                const int data_len);
+                                int data_len);
 
 void BHStartWorker(FServerCallback server_cb, FSubDataCallback sub_cb, FClientCallback client_cb);
-
-int BHServerCallbackReply(const void *tag,
-                          const void *data,
-                          const int data_len);
 
 int BHHeartbeatEasy(const int timeout_ms);
 int BHHeartbeat(const void *proc_info,
@@ -77,12 +95,16 @@
               int *msgpub_len,
               const int timeout_ms);
 
-int BHAsyncRequest(const void *request,
+int BHAsyncRequest(const void *remote,
+                   const int remote_len,
+                   const void *request,
                    const int request_len,
                    void **msg_id,
                    int *msg_id_len);
 
-int BHRequest(const void *request,
+int BHRequest(const void *remote,
+              const int remote_len,
+              const void *request,
               const int request_len,
               void **proc_id,
               int *proc_id_len,
@@ -101,7 +123,7 @@
                 const void *reply,
                 const int reply_len);
 
-// int BHCleanUp();
+int BHCleanup();
 
 void BHFree(void *buf, int size);
 

--
Gitblit v1.8.0