using System; namespace PepperDash.Essentials.Core { /// /// Provides event arguments for routing changes, potentially including numeric or port object references. /// public class RoutingNumericEventArgs : EventArgs { /// /// The numeric representation of the output, if applicable. /// public uint? Output { get; set; } /// /// The numeric representation of the input, if applicable. /// public uint? Input { get; set; } /// /// The type of signal involved in the routing change. /// public eRoutingSignalType SigType { get; set; } /// /// The input port involved in the routing change, if applicable. /// public RoutingInputPort InputPort { get; set; } /// /// The output port involved in the routing change, if applicable. /// public RoutingOutputPort OutputPort { get; set; } /// /// Initializes a new instance of the class using numeric identifiers. /// /// The numeric output identifier. /// The numeric input identifier. /// The signal type. public RoutingNumericEventArgs(uint output, uint input, eRoutingSignalType sigType) : this(output, input, null, null, sigType) { } /// /// Initializes a new instance of the class using port objects. /// /// The output port object. /// The input port object. /// The signal type. public RoutingNumericEventArgs(RoutingOutputPort outputPort, RoutingInputPort inputPort, eRoutingSignalType sigType) : this(null, null, outputPort, inputPort, sigType) { } /// /// Initializes a new instance of the class with default values. /// public RoutingNumericEventArgs() : this(null, null, null, null, 0) { } /// /// Initializes a new instance of the class with potentially mixed identifiers. /// /// The numeric output identifier (optional). /// The numeric input identifier (optional). /// The output port object (optional). /// The input port object (optional). /// The signal type. public RoutingNumericEventArgs(uint? output, uint? input, RoutingOutputPort outputPort, RoutingInputPort inputPort, eRoutingSignalType sigType) { OutputPort = outputPort; InputPort = inputPort; Output = output; Input = input; SigType = sigType; } } }