From 439c11e9b3c65607f04bc9a07e7414e5d3377eae Mon Sep 17 00:00:00 2001
From: "Dmitriy A. Gerasimov" <dmitriy.gerasimov@demlabs.net>
Date: Tue, 11 Dec 2018 17:49:37 +0700
Subject: [PATCH] [*] Callbakcs for stream channel

---
 dap_stream_ch_chain_net.c | 65 +++++++++++++++++++++++++++++++++++++--
 1 file changed, 63 insertions(+), 2 deletions(-)

diff --git a/dap_stream_ch_chain_net.c b/dap_stream_ch_chain_net.c
index 9ae34d0..db14f8c 100644
--- a/dap_stream_ch_chain_net.c
+++ b/dap_stream_ch_chain_net.c
@@ -26,12 +26,24 @@
 #include <errno.h>
 #include <string.h>
 #include "dap_common.h"
-
+#include "dap_stream.h"
+#include "dap_stream_ch.h"
 #include "dap_stream_ch_chain_net.h"
+#include "dap_stream_ch_proc.h"
+
 
-#define LOG_TAG "stream_ch_chain_net"
+#define LOG_TAG "dap_stream_ch_chain_net"
 
+typedef struct dap_stream_ch_chain_net {
+    pthread_mutex_t mutex;
+} dap_stream_ch_chain_net_t;
 
+#define DAP_STREAM_CH_CHAIN_NET(a) ((dap_stream_ch_chain_net_t *) ((a)->internal) )
+
+static void s_stream_ch_new(dap_stream_ch_t* ch , void* arg);
+static void s_stream_ch_delete(dap_stream_ch_t* ch , void* arg);
+static void s_stream_ch_packet_in(dap_stream_ch_t* ch , void* arg);
+static void s_stream_ch_packet_out(dap_stream_ch_t* ch , void* arg);
 
 /**
  * @brief dap_stream_ch_chain_net_init
@@ -40,9 +52,58 @@
 int dap_stream_ch_chain_net_init()
 {
     log_it(L_NOTICE,"Chain network channel initialized");
+    dap_stream_ch_proc_add('N',s_stream_ch_new,s_stream_ch_delete,s_stream_ch_packet_in,s_stream_ch_packet_out);
+
     return 0;
 }
 
+/**
+ * @brief dap_stream_ch_chain_deinit
+ */
 void dap_stream_ch_chain_net_deinit()
 {
+
+}
+
+/**
+ * @brief s_stream_ch_new
+ * @param a_ch
+ * @param arg
+ */
+void s_stream_ch_new(dap_stream_ch_t* a_ch , void* arg)
+{
+    a_ch->internal=DAP_NEW_Z(dap_stream_ch_chain_net_t);
+    dap_stream_ch_chain_net_t * l_ch_chain_net = DAP_STREAM_CH_CHAIN_NET(a_ch);
+    pthread_mutex_init( &l_ch_chain_net->mutex,NULL);
+}
+
+
+/**
+ * @brief s_stream_ch_delete
+ * @param ch
+ * @param arg
+ */
+void s_stream_ch_delete(dap_stream_ch_t* ch , void* arg)
+{
+
+}
+
+/**
+ * @brief s_stream_ch_packet_in
+ * @param ch
+ * @param arg
+ */
+void s_stream_ch_packet_in(dap_stream_ch_t* ch , void* arg)
+{
+
+}
+
+/**
+ * @brief s_stream_ch_packet_out
+ * @param ch
+ * @param arg
+ */
+void s_stream_ch_packet_out(dap_stream_ch_t* ch , void* arg)
+{
+
 }
-- 
GitLab