From 2508d86158cf3fa3565ef808a5b92711c490af0f Mon Sep 17 00:00:00 2001
From: zhangmeng <775834166@qq.com>
Date: 星期二, 30 四月 2019 15:40:04 +0800
Subject: [PATCH] add ipc run as server or not

---
 analysis/demo/simpleIPC.go        |    4 ++--
 analysis/valib/ipc                |    2 +-
 analysis/work/service/reciever.go |   11 ++++++++---
 analysis/main.go                  |    4 ++--
 analysis/proc.go                  |    2 +-
 5 files changed, 14 insertions(+), 9 deletions(-)

diff --git a/analysis/demo/simpleIPC.go b/analysis/demo/simpleIPC.go
index 8118670..1cecdfc 100644
--- a/analysis/demo/simpleIPC.go
+++ b/analysis/demo/simpleIPC.go
@@ -12,11 +12,11 @@
 )
 
 // RunYoloFromIPC recv data from ipc
-func RunYoloFromIPC(ipcURL string) {
+func RunYoloFromIPC(ipcURL string, asServer bool) {
 	imageChan := make(chan srv.ImageInfo)
 
 	d := srv.NewReciever(ipcURL, imageChan)
-	go d.Run()
+	go d.Run(asServer)
 
 	cfg := "./data/yolo/cfg/yolov3.cfg"
 	weights := "./data/yolo/yolov3.weights"
diff --git a/analysis/main.go b/analysis/main.go
index 60a2955..93cf70e 100644
--- a/analysis/main.go
+++ b/analysis/main.go
@@ -1,9 +1,9 @@
 package main
 
 import (
+	"analysis/demo"
 	"flag"
 	"fmt"
-	// "videoServer/demo"
 )
 
 var (
@@ -33,7 +33,7 @@
 	// demo.Yolo(streamURL)
 	// demo.CVDraw()
 
-	// demo.RunYoloFromIPC(ipcURL)
+	demo.RunYoloFromIPC(ipcURL, false)
 
 	fakeStartProc()
 }
diff --git a/analysis/proc.go b/analysis/proc.go
index 758fa2d..4be19bd 100644
--- a/analysis/proc.go
+++ b/analysis/proc.go
@@ -15,7 +15,7 @@
 	imageChan := make(chan service.ImageInfo)
 
 	d := service.NewReciever(ipcURL, imageChan)
-	go d.Run()
+	go d.Run(false)
 
 	if proc == "" {
 		d.Stop()
diff --git a/analysis/valib/ipc b/analysis/valib/ipc
index 66d8e66..8841f9d 160000
--- a/analysis/valib/ipc
+++ b/analysis/valib/ipc
@@ -1 +1 @@
-Subproject commit 66d8e6695ada4090bdb81279d594f323be875bc7
+Subproject commit 8841f9d2154a8e0653d30fdc04bde8a772665c8c
diff --git a/analysis/work/service/reciever.go b/analysis/work/service/reciever.go
index c9c1d90..b952d99 100644
--- a/analysis/work/service/reciever.go
+++ b/analysis/work/service/reciever.go
@@ -54,13 +54,18 @@
 }
 
 // Run run task from ipc data
-func (r *Reciever) Run() {
-	ipc := ipc.NewClient(r.ctxIPC.ctx, r.ipcURL)
+func (r *Reciever) Run(asServer bool) {
+	var i *ipc.IPC
+	if asServer {
+		i = ipc.NewServer(r.ctxIPC.ctx, r.ipcURL)
+	} else {
+		i = ipc.NewClient(r.ctxIPC.ctx, r.ipcURL)
+	}
 
 	dataChan := make(chan []byte)
 	go unserilizeImageInfo(dataChan, r.chImage)
 
-	ipc.RecvToChannel(dataChan)
+	i.RecvToChannel(dataChan)
 }
 
 // Stop stop reciever, run in goroutine

--
Gitblit v1.8.0