From 8c42a659c0cc9178d1f1305acb41dfbf4a8697ef Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期四, 22 十月 2020 16:20:26 +0800
Subject: [PATCH] update
---
src/socket/dgram_mod_socket.c | 50 +++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 41 insertions(+), 9 deletions(-)
diff --git a/src/socket/dgram_mod_socket.c b/src/socket/dgram_mod_socket.c
index e733ff6..3e0fd0c 100644
--- a/src/socket/dgram_mod_socket.c
+++ b/src/socket/dgram_mod_socket.c
@@ -1,11 +1,20 @@
#include "dgram_mod_socket.h"
-#include "dmod_socket.h"
+#include "shm_mod_socket.h"
typedef struct dgram_mod_socket_t {
- DModSocket *m_socket;
+ ShmModSocket *m_socket;
} dgram_mod_socket_t;
+
+int dgram_mod_remove_keys(int keys[], int length){
+ return ShmModSocket::remove_keys(keys, length);
+}
+
+int dgram_mod_remove_key(int key){
+ int keys[] = {key};
+ return ShmModSocket::remove_keys(keys, 1);
+}
/**
* 鍒涘缓socket
* @return socket鍦板潃
@@ -13,7 +22,7 @@
void *dgram_mod_open_socket() {
dgram_mod_socket_t * socket = (dgram_mod_socket_t *)calloc(1, sizeof(dgram_mod_socket_t));
// socket->mod = (socket_mod_t)mod;
- socket->m_socket = new DModSocket;
+ socket->m_socket = new ShmModSocket;
return (void *)socket;
}
@@ -128,17 +137,40 @@
*/
int dgram_mod_sub(void * _socket, void *topic, int size, int port){
dgram_mod_socket_t * socket = (dgram_mod_socket_t *) _socket;
- return socket->m_socket->sub(topic, size, port);
+ return socket->m_socket->sub((char *)topic, size, port);
}
// 瓒呮椂杩斿洖銆� @sec 绉� 锛� @nsec 绾崇
int dgram_mod_sub_timeout(void * _socket, void *topic, int size, int port, int sec, int nsec){
dgram_mod_socket_t * socket = (dgram_mod_socket_t *) _socket;
struct timespec timeout = {sec, nsec};
- return socket->m_socket->sub_timeout(topic, size, port, &timeout);
+ return socket->m_socket->sub_timeout((char *)topic, size, port, &timeout);
}
int dgram_mod_sub_nowait(void * _socket, void *topic, int size, int port){
dgram_mod_socket_t * socket = (dgram_mod_socket_t *) _socket;
- return socket->m_socket->sub_nowait(topic, size, port);
+ return socket->m_socket->sub_nowait((char *)topic, size, port);
+}
+
+
+
+/**
+ * 鍙栨秷璁㈤槄鎸囧畾涓婚
+ * @topic 涓婚
+ * @size 涓婚闀垮害
+ * @port 鎬荤嚎绔彛
+ */
+int dgram_mod_desub(void * _socket, void *topic, int size, int port){
+ dgram_mod_socket_t * socket = (dgram_mod_socket_t *) _socket;
+ return socket->m_socket->desub((char *)topic, size, port);
+}
+// 瓒呮椂杩斿洖銆� @sec 绉� 锛� @nsec 绾崇
+int dgram_mod_desub_timeout(void * _socket, void *topic, int size, int port, int sec, int nsec){
+ dgram_mod_socket_t * socket = (dgram_mod_socket_t *) _socket;
+ struct timespec timeout = {sec, nsec};
+ return socket->m_socket->desub_timeout((char *)topic, size, port, &timeout);
+}
+int dgram_mod_desub_nowait(void * _socket, void *topic, int size, int port){
+ dgram_mod_socket_t * socket = (dgram_mod_socket_t *) _socket;
+ return socket->m_socket->desub_nowait((char *)topic, size, port);
}
@@ -151,17 +183,17 @@
*/
int dgram_mod_pub(void * _socket, void *topic, int topic_size, void *content, int content_size, int port){
dgram_mod_socket_t * socket = (dgram_mod_socket_t *) _socket;
- return socket->m_socket->pub(topic, topic_size, content, content_size, port);
+ return socket->m_socket->pub((char *)topic, topic_size, content, content_size, port);
}
// 瓒呮椂杩斿洖銆� @sec 绉� 锛� @nsec 绾崇
int dgram_mod_pub_timeout(void * _socket, void *topic, int topic_size, void *content, int content_size, int port, int sec, int nsec){
dgram_mod_socket_t * socket = (dgram_mod_socket_t *) _socket;
struct timespec timeout = {sec, nsec};
- return socket->m_socket->pub_timeout(topic, topic_size, content, content_size, port, &timeout);
+ return socket->m_socket->pub_timeout((char *)topic, topic_size, content, content_size, port, &timeout);
}
int dgram_mod_pub_nowait(void * _socket, void *topic, int topic_size, void *content, int content_size, int port){
dgram_mod_socket_t * socket = (dgram_mod_socket_t *) _socket;
- return socket->m_socket->pub_nowait(topic, topic_size, content, content_size, port);
+ return socket->m_socket->pub_nowait((char *)topic, topic_size, content, content_size, port);
}
--
Gitblit v1.8.0