From 33804d4591d5021b4dec1da5f5152422282409c6 Mon Sep 17 00:00:00 2001
From: panlei <2799247126@qq.com>
Date: 星期三, 13 十一月 2019 11:23:55 +0800
Subject: [PATCH] --暂存
---
algorithm/middleware/middleware.go | 6 +++---
ruleserver/ruleToformula.go | 17 +++++++++--------
2 files changed, 12 insertions(+), 11 deletions(-)
diff --git a/algorithm/middleware/middleware.go b/algorithm/middleware/middleware.go
index 57b1c07..266ceea 100644
--- a/algorithm/middleware/middleware.go
+++ b/algorithm/middleware/middleware.go
@@ -14,7 +14,7 @@
"time"
)
-func Entrance (args *structure.SdkDatas,groupRule protomsg.GroupRule,lable *structure.Others,message *protomsg.SdkMessage) (bool,string,string){
+func Entrance (args *structure.SdkDatas,groupRule protomsg.GroupRule,lable *structure.Others,message *protomsg.SdkMessage) (bool,[]*structure.Arg,string,string){
resultSplice := []*structure.LittleRuleResult{}
sdkNames := ""
polygonId := ""
@@ -214,9 +214,9 @@
panic("瑙勫垯鏈夎锛屽緱鍒扮殑鏁板鍏紡涓嶅彲瑙f瀽")
}
result, _ := expression.Evaluate(nil) // 寰楀埌鏁板鍏紡鐨勭粨鏋�
- return result.(bool),sdkNames,polygonId
+ return result.(bool),nil,sdkNames,polygonId
} else {
- return false,sdkNames,polygonId
+ return false,nil,sdkNames,polygonId
}
}
diff --git a/ruleserver/ruleToformula.go b/ruleserver/ruleToformula.go
index 7838d53..e54a5d4 100644
--- a/ruleserver/ruleToformula.go
+++ b/ruleserver/ruleToformula.go
@@ -77,7 +77,7 @@
}
}
-func CallMiddleware(args *structure.SdkDatas,rule protomsg.GroupRule,lable *structure.Others,message *protomsg.SdkMessage) (bool, string, string){
+func CallMiddleware(args *structure.SdkDatas,rule protomsg.GroupRule,lable *structure.Others,message *protomsg.SdkMessage) (bool, []*structure.Arg, string, string){
p,err := plugin.Open("./algorithm/middleware.so")
if err != nil {
panic(err)
@@ -86,8 +86,8 @@
if err1 != nil {
panic("娌℃湁鎵惧埌涓棿浠跺叆鍙e嚱鏁�")
}
- a,b,c := f.(func(args *structure.SdkDatas,rule protomsg.GroupRule,label *structure.Others,message *protomsg.SdkMessage)(bool, string, string))(args,rule,lable,message)
- return a,b,c
+ a,b,c,d := f.(func(args *structure.SdkDatas,rule protomsg.GroupRule,label *structure.Others,message *protomsg.SdkMessage)(bool,[]*structure.Arg, string, string))(args,rule,lable,message)
+ return a,b,c,d
}
func RunRule(args *structure.SdkDatas, groupRule *protomsg.GroupRule, taskId string, message *protomsg.SdkMessage, label structure.Others) (bool,[]int) {
@@ -102,11 +102,12 @@
result := false
sdkNames := ""
polygonId := ""
+ targets := []*structure.Arg{} // 绗﹀悎鏉′欢鐨勭洰鏍�
// 鎶婁竴甯ф暟鎹拰涓�缁勮鍒欏彂缁欑畻娉曢儴鍒嗭紝寰楀嚭鍒ゆ柇缁撴灉
- result,sdkNames,polygonId = CallMiddleware(args,*groupRule,&label,message)
-
+ result,targets,sdkNames,polygonId = CallMiddleware(args,*groupRule,&label,message)
+ logger.Info("绗﹀悎鏉′欢鐨勭洰鏍囨暟鎹細",targets)
if result {
- // 鏈�鍚庤繃鎸佺画鏃堕棿绛夋椂闂寸淮搴︾殑鏉′欢 鎶婃椂闂磋鍒欎綅缃皟鏁村埌杩欎釜浣嶇疆鏄负浜嗙紦瀛樻暟鎹�
+ // 鏈�鍚庤繃鎸佺画鏃堕棿绛夋椂闂寸淮搴︾殑鏉′欢 鎶婃椂闂磋鍒欎綅缃皟鏁村埌杩欎釜浣嶇疆鏄负浜嗙紦瀛樻暟鎹� 锛侊紒锛侊紒锛乸s: 瀵圭敾闈腑鍗曚釜鐩爣鍋氬畾鏃跺櫒鐨勪笉鐢ㄥ啀杩囩敾闈㈠畾鏃跺櫒
cacheId := ""
for j := 0; j < len(groupRule.Rules); j++ {
for _, sdkData := range args.Sdkdata {
@@ -173,12 +174,12 @@
}
var labelTypes []int // 0涓簓olo鏍囩锛�1涓篺ace鏍囩 2涓轰袱鑰呮爣绛�
if sdkNames != "" {
- args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, locations, polygonId, islink,label,})
+ args.RuleResult["yolo"] = append(args.RuleResult["yolo"].([]structure.Result), structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, locations, polygonId, islink,label})
labelTypes = append(labelTypes,0)
//logger.Info("-------------------yolo缁撴灉鏍囩闀垮害", len(args.RuleResult["yolo"].([]Result)))
}
if faceFlag {
- args.RuleResult["face"] = append(args.RuleResult["face"].([]structure.TargetResult), structure.TargetResult{structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, []structure.TargetInfo{}, polygonId, islink,label,}, faces})
+ args.RuleResult["face"] = append(args.RuleResult["face"].([]structure.TargetResult), structure.TargetResult{structure.Result{taskId, sdkNames, groupRule.GroupId, groupRule.DefenceState, groupRule.AlarmLevel, groupRule.GroupText, []structure.TargetInfo{}, polygonId, islink,label}, faces})
//logger.Info("-------------------face缁撴灉鏍囩", len(args.RuleResult["face"].([]FaceResult)))
labelTypes = append(labelTypes,1)
}
--
Gitblit v1.8.0