From d26e81c4213dfb04391c7b6692f243aede2e6895 Mon Sep 17 00:00:00 2001
From: wangzhengquan <wangzhengquan85@126.com>
Date: 星期一, 12 十月 2020 15:25:31 +0800
Subject: [PATCH] version

---
 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