mirror of
https://github.com/PepperDash/Essentials.git
synced 2026-01-30 12:54:54 +00:00
fix: make IRoutingOutputSlot & RoutingOutputSlotBase generic
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace PepperDash.Essentials.Core.Routing
|
||||
{
|
||||
public interface IMatrixRouting<TInput, TOutput> where TInput : IRoutingInputSlot where TOutput : IRoutingOutputSlot
|
||||
public interface IMatrixRouting<TInput, TOutput> where TInput : IRoutingInputSlot where TOutput : IRoutingOutputSlot<TInput>
|
||||
{
|
||||
Dictionary<string, TInput> InputSlots { get; }
|
||||
Dictionary<string, TOutput> OutputSlots { get; }
|
||||
|
||||
@@ -3,19 +3,19 @@ using System.Collections.Generic;
|
||||
|
||||
namespace PepperDash.Essentials.Core.Routing
|
||||
{
|
||||
public interface IRoutingOutputSlot : IRoutingSlot
|
||||
public interface IRoutingOutputSlot<TInput> : IRoutingSlot where TInput: IRoutingInputSlot
|
||||
{
|
||||
event EventHandler OutputSlotChanged;
|
||||
|
||||
string RxDeviceKey { get; }
|
||||
|
||||
Dictionary<eRoutingSignalType, RoutingInputSlotBase> CurrentRoutes { get; }
|
||||
Dictionary<eRoutingSignalType, TInput> CurrentRoutes { get; }
|
||||
}
|
||||
|
||||
public abstract class RoutingOutputSlotBase : IRoutingOutputSlot
|
||||
public abstract class RoutingOutputSlotBase<TInput> : IRoutingOutputSlot<TInput> where TInput: IRoutingInputSlot
|
||||
{
|
||||
public abstract string RxDeviceKey { get; }
|
||||
public abstract Dictionary<eRoutingSignalType, RoutingInputSlotBase> CurrentRoutes { get; }
|
||||
public abstract Dictionary<eRoutingSignalType, TInput> CurrentRoutes { get; }
|
||||
public abstract int SlotNumber { get; }
|
||||
public abstract eRoutingSignalType SupportedSignalTypes { get; }
|
||||
public abstract string Name { get; }
|
||||
|
||||
Reference in New Issue
Block a user