Commit 6893ec3c by 鲁志-悦动

适配音视频的MaskMsg和ReplayResp消息

parent 51cd801d
......@@ -32,6 +32,10 @@ namespace VIZ.FGOUT.Connection
this.providers.Add(new AlgorithmProvider__detect());
// 算法落盘
this.providers.Add(new AlgorithmProvider__start_end());
//通知UI界面贴图状态
this.providers.Add(new ClipProvider__MaskMsg());
//回复UI界面Replay结果
this.providers.Add(new ClipProvider__ReplayResp());
}
/// <summary>
......
......@@ -16,5 +16,15 @@
/// 二次确认
/// </summary>
public const string RECONFIRM = "RECONFIRM";
/// <summary>
/// 回复UI界面Replay结果
/// </summary>
public const string ReplayResp = "ReplayResp";
/// <summary>
/// 通知UI界面贴图状态
/// </summary>
public const string MaskMsg = "MaskMsg";
}
}
using System;
using VIZ.FGOUT.Domain;
using VIZ.Framework.Connection;
using VIZ.Framework.Domain;
namespace VIZ.FGOUT.Connection
{
public class ClipProvider__MaskMsg : IAlgorithmPackageProvider
{
/// <summary>
/// 信号
/// </summary>
public string Signal { get; } = ClipPackageSignal.MaskMsg;
/// <summary>
/// 执行
/// </summary>
/// <param name="info"></param>
/// <exception cref="NotImplementedException"></exception>
public void Execute(ConnSingleJsonInfo info)
{
ClipRecvPackage__MaskMsg package = Newtonsoft.Json.JsonConvert.DeserializeObject<ClipRecvPackage__MaskMsg>(info.Json);
ClipMessage__MaskMsg message = new ClipMessage__MaskMsg();
message.data = package.data;
ApplicationDomain.MessageManager.Send(message);
}
}
}
using System;
using VIZ.FGOUT.Connection.UDP;
using VIZ.FGOUT.Domain;
using VIZ.Framework.Connection;
using VIZ.Framework.Domain;
namespace VIZ.FGOUT.Connection
{
public class ClipProvider__ReplayResp : IAlgorithmPackageProvider
{
/// <summary>
/// 信号
/// </summary>
public string Signal { get; } = ClipPackageSignal.ReplayResp;
/// <summary>
/// 执行
/// </summary>
/// <param name="info"></param>
/// <exception cref="NotImplementedException"></exception>
public void Execute(ConnSingleJsonInfo info)
{
ClipRecvPackage__ReplayResp package = Newtonsoft.Json.JsonConvert.DeserializeObject<ClipRecvPackage__ReplayResp>(info.Json);
ClipMessage__ReplayResp message = new ClipMessage__ReplayResp();
message.data = package.data;
ApplicationDomain.MessageManager.Send(message);
}
}
}
using VIZ.FGOUT.Domain;
namespace VIZ.FGOUT.Connection
{
public class ClipRecvPackage__MaskMsg : AlgorithmPackageBase
{
public override string signal { get; set; } = ClipPackageSignal.MaskMsg;
public MaskMsgData data { get; set; }
}
}
using VIZ.FGOUT.Domain;
namespace VIZ.FGOUT.Connection.UDP
{
public class ClipRecvPackage__ReplayResp : AlgorithmPackageBase
{
public override string signal { get; set; } = ClipPackageSignal.ReplayResp;
public ReplayRespData data { get; set; }
}
}
......@@ -103,7 +103,11 @@
<Compile Include="UDP\Algorithm\Signal\Send\AlgorithmPackage__no_mode.cs" />
<Compile Include="UDP\Algorithm\Signal\Send\AlgorithmPackage__stop.cs" />
<Compile Include="UDP\Clip\Enum\ClipPackageSignal.cs" />
<Compile Include="UDP\Clip\Provider\ClipProvider__ReplayResp.cs" />
<Compile Include="UDP\Clip\Provider\ClipProvider__MaskMsg.cs" />
<Compile Include="UDP\Clip\Sender\ClipSender.cs" />
<Compile Include="UDP\Clip\Signal\Recv\ClipRecvPackage__MaskMsg.cs" />
<Compile Include="UDP\Clip\Signal\Recv\ClipRecvPackage__ReplayResp.cs" />
<Compile Include="UDP\Clip\Signal\Send\ClipPackage__crop_roi.cs" />
<Compile Include="UDP\Clip\Signal\Send\ReconfirmPackage.cs" />
<Compile Include="UDP\Clip\Signal\Send\ReplayPackage.cs" />
......
9a29495fd000d7cfc390caea2531b63ad4e01cabcde39992dc960963f52610ba
f04930f7d024d366b65c16faf728efd9669a1c905de8a5b7b1939c35c71db852
namespace VIZ.FGOUT.Domain
{
public class ClipMessage__MaskMsg
{
public MaskMsgData data { get; set; }
}
public class MaskMsgData
{
public long timestamp { get; set; }
public int status { get; set; }
}
}
namespace VIZ.FGOUT.Domain
{
public class ClipMessage__ReplayResp
{
public ReplayRespData data { get; set; }
}
public class ReplayRespData
{
public int inTime { get; set; }
public int outTime { get; set; }
public int status { get; set; }
public int errNo { get; set; }
}
}
......@@ -81,6 +81,8 @@
<Compile Include="Message\Algorithm\Implementation\AlgorithmMessage__detect.cs" />
<Compile Include="Message\Algorithm\Implementation\AlgorithmMessage__start_end.cs" />
<Compile Include="Message\Algorithm\Interface\IAlgorithmMessage__roi.cs" />
<Compile Include="Message\Clip\Implementation\ClipMessage__ReplayResp.cs" />
<Compile Include="Message\Clip\Implementation\ClipMessage__MaskMsg.cs" />
<Compile Include="Message\Setting\AutoSendModel.cs" />
<Compile Include="Message\Setting\CleanInPointsModel.cs" />
<Compile Include="Message\Setting\CleanPlaceModel.cs" />
......
66951d7d855714407e801fcd5acaf49611b3106deecdf1232b5d72073ba783ec
938d89f8a41b1d10d311c9a80e37ba0b11fb8b24d3f0882cff04f9fd017b0a12
......@@ -241,6 +241,52 @@ namespace VIZ.FGOUT.Module
// 算法落盘开始、结束时间戳消息(在NDIViewModel已注册了接收方法)
//ApplicationDomain.MessageManager.Register<AlgorithmMessage__start_end>(this, this.OnAlgorithmMessage__start_end);
//通知UI界面贴图状态
ApplicationDomain.MessageManager.Register<ClipMessage__MaskMsg>(this, this.OnClipMessage__MaskMsg);
//回复UI界面Replay结果
ApplicationDomain.MessageManager.Register<ClipMessage__ReplayResp>(this, this.OnClipMessage__ReplayResp);
}
private void OnClipMessage__MaskMsg(ClipMessage__MaskMsg msg)
{
if (msg?.data?.status == 3)
{
var config = ApplicationDomainEx.LiteDbContext.AlgorithmSaveMatImage.FindAll().FirstOrDefault();
if (config == null) config = new AlgorithmSaveMatImage();
config.start = msg.data.timestamp;
ApplicationDomainEx.LiteDbContext.AlgorithmSaveMatImage.Upsert(config);
WPFHelper.BeginInvoke(() =>
{
AutoSendCount = AutoSendIntervalTime;
_autoSend_Timer.Stop();
_autoSend_Timer.Start();
});
}
}
private void OnClipMessage__ReplayResp(ClipMessage__ReplayResp msg)
{
var message = "其他情况。";
if (msg?.data?.status == 0)
{
var data = msg.data;
if (data.errNo == 1)
{
message = "入点没找到。";
}
else if (data.errNo == 2)
{
message = "出点没找到。";
}
WPFHelper.BeginInvoke(() =>
{
MessageBoxEx.ShowDialog(message);
});
}
}
/// <summary>
......@@ -1594,7 +1640,9 @@ namespace VIZ.FGOUT.Module
//MessageBoxEx.ShowDialog("Replay Start OK.");
//StartAutoSendTimer();
//StartAutoSendTimer();
AutoSendCount = AutoSendIntervalTime;
}
public VCommand InPointCommand { get; set; }
......
......@@ -22,21 +22,20 @@ namespace VIZ.FGOUT.Module
/// <param name="msg"></param>
private void OnAlgorithmMessage__start_end(AlgorithmMessage__start_end msg)
{
if (msg.end == -1) return;
if (this.ViewKey != NDIViewKeys.CAM_1) return;
//if (msg.end == -1) return;
//if (this.ViewKey != NDIViewKeys.CAM_1) return;
var config = ApplicationDomainEx.LiteDbContext.AlgorithmSaveMatImage.FindAll().FirstOrDefault();
if (config == null)
config = new AlgorithmSaveMatImage();
config.start = msg.start;
config.end = msg.end;
ApplicationDomainEx.LiteDbContext.AlgorithmSaveMatImage.Upsert(config);
//var config = ApplicationDomainEx.LiteDbContext.AlgorithmSaveMatImage.FindAll().FirstOrDefault();
//if (config == null) config = new AlgorithmSaveMatImage();
//config.start = msg.start;
//config.end = msg.end;
//ApplicationDomainEx.LiteDbContext.AlgorithmSaveMatImage.Upsert(config);
_autoSend_Timer.Stop();
_autoSend_Timer.Start();
//_autoSend_Timer.Stop();
//_autoSend_Timer.Start();
var autoSendModel = new AutoSendModel(){ Interval = ALGORITHM_ReconfirmAutoSend_TIME };
ApplicationDomain.MessageManager.Send(autoSendModel);
//var autoSendModel = new AutoSendModel(){ Interval = ALGORITHM_ReconfirmAutoSend_TIME };
//ApplicationDomain.MessageManager.Send(autoSendModel);
}
/// <summary>
......
......@@ -351,16 +351,14 @@ namespace VIZ.FGOUT.Module
private void ReconfirmAbandon(ReconfirmAbandonModel reconfirmAbandonModel)
{
if (this.ViewKey != NDIViewKeys.CAM_1)
return;
if (this.ViewKey != NDIViewKeys.CAM_1) return;
ReconfirmSendParamsCommon(ReconfirmStatus.Abandon);
_autoSend_Timer.Stop();
}
private void ReconfirmSend(ReconfirmSendModel reconfirmSendModel)
{
if (this.ViewKey != NDIViewKeys.CAM_1)
return;
if (this.ViewKey != NDIViewKeys.CAM_1) return;
ReconfirmSendParamsCommon(ReconfirmStatus.Send);
//_autoSend_Timer.Stop();
//_autoSend_Timer.Start();
......

C:\Projects\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Module\obj\x64\Debug\GeneratedInternalTypeHelper.g.cs
FC:\Projects\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Module\NDIMainView\View\NDIMainView.xaml;;
FC:\Projects\FGOUT\VIZ.FGOUT\VIZ.FGOUT.Module\NDIPreviewView\View\NDIPreviewView.xaml;;
......
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace XamlGeneratedNamespace {
/// <summary>
/// GeneratedInternalTypeHelper
/// </summary>
[System.Diagnostics.DebuggerNonUserCodeAttribute()]
[System.CodeDom.Compiler.GeneratedCodeAttribute("PresentationBuildTasks", "4.0.0.0")]
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Never)]
public sealed class GeneratedInternalTypeHelper : System.Windows.Markup.InternalTypeHelper {
/// <summary>
/// CreateInstance
/// </summary>
protected override object CreateInstance(System.Type type, System.Globalization.CultureInfo culture) {
return System.Activator.CreateInstance(type, ((System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic)
| (System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.CreateInstance)), null, null, culture);
}
/// <summary>
/// GetPropertyValue
/// </summary>
protected override object GetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, System.Globalization.CultureInfo culture) {
return propertyInfo.GetValue(target, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// SetPropertyValue
/// </summary>
protected override void SetPropertyValue(System.Reflection.PropertyInfo propertyInfo, object target, object value, System.Globalization.CultureInfo culture) {
propertyInfo.SetValue(target, value, System.Reflection.BindingFlags.Default, null, null, culture);
}
/// <summary>
/// CreateDelegate
/// </summary>
protected override System.Delegate CreateDelegate(System.Type delegateType, object target, string handler) {
return ((System.Delegate)(target.GetType().InvokeMember("_CreateDelegate", (System.Reflection.BindingFlags.InvokeMethod
| (System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance)), null, target, new object[] {
delegateType,
handler}, null)));
}
/// <summary>
/// AddEventHandler
/// </summary>
protected override void AddEventHandler(System.Reflection.EventInfo eventInfo, object target, System.Delegate handler) {
eventInfo.AddEventHandler(target, handler);
}
}
}


C:\Projects\FGOUT\VIZ.Framework\VIZ.Framework.Common\obj\x64\Debug\GeneratedInternalTypeHelper.g.cs
FC:\Projects\FGOUT\VIZ.Framework\VIZ.Framework.Common\MessageBox\MessageBoxEx.xaml;;
FC:\Projects\FGOUT\VIZ.Framework\VIZ.Framework.Common\MessageBox\MessageBoxExWindow.xaml;;
......
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace VIZ.Framework.Connection
namespace VIZ.Framework.Connection
{
/// <summary>
/// 单条消息为JSON信息
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment