IVisualizationProcessorFactory.cs
1.14 KB
namespace Rcs.Infrastructure.Mqtt.ProcessorFactory;
/// <summary>
/// 可视化数据处理器工厂接口 - 按制造商分发处理器
/// 通过反射自动发现并注册带有 [ProtocolInfo] 标记的处理器实现
/// @author zzy
/// </summary>
public interface IVisualizationProcessorFactory
{
/// <summary>
/// 获取指定制造商的可视化数据处理器
/// 未找到专用处理器时返回默认处理器(不返回null)
/// </summary>
/// <param name="manufacturer">制造商名称</param>
/// <returns>对应的处理器实例</returns>
IVisualizationDataProcessor GetProcessor(string manufacturer);
/// <summary>
/// 获取所有已注册的制造商列表
/// </summary>
/// <returns>制造商名称集合</returns>
IEnumerable<string> GetSupportedManufacturers();
/// <summary>
/// 手动刷新并重新注册处理器
/// </summary>
void RefreshProcessors();
/// <summary>
/// 获取已注册处理器的详细信息
/// </summary>
/// <returns>制造商与处理器类型信息映射</returns>
Dictionary<string, string> GetRegisteredProcessorsInfo();
}