增加了图像缩放的支持
This commit is contained in:
36
SHH.CameraSdk/Core/Pipeline/GlobalPipelineRouter.cs
Normal file
36
SHH.CameraSdk/Core/Pipeline/GlobalPipelineRouter.cs
Normal file
@@ -0,0 +1,36 @@
|
||||
namespace SHH.CameraSdk;
|
||||
|
||||
/// <summary>
|
||||
/// [改道分发中心] 全局管道路由器
|
||||
/// 职责:驱动层只管把数据扔到这里,不用关心后面是缩放、增强还是直接分发。
|
||||
/// </summary>
|
||||
public static class GlobalPipelineRouter
|
||||
{
|
||||
// 当前激活的处理器 (默认可为空,为空则直接透传)
|
||||
private static IFrameProcessor? _currentProcessor;
|
||||
|
||||
/// <summary>
|
||||
/// 配置具体的处理策略 (在 Program.cs 中初始化)
|
||||
/// </summary>
|
||||
public static void SetProcessor(IFrameProcessor processor)
|
||||
{
|
||||
_currentProcessor = processor;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// [驱动层入口] 提交帧数据
|
||||
/// </summary>
|
||||
public static void Enqueue(long deviceId, SmartFrame frame, FrameDecision decision)
|
||||
{
|
||||
if (_currentProcessor != null)
|
||||
{
|
||||
// 场景 A: 有处理器 (如缩放服务) -> 改道进入处理器
|
||||
_currentProcessor.Enqueue(deviceId, frame, decision);
|
||||
}
|
||||
else
|
||||
{
|
||||
// 场景 B: 无处理器 -> 直接进入全局分发中心 (回退到原始逻辑)
|
||||
GlobalProcessingCenter.Submit(deviceId, frame, decision);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user