using System; using System.Collections.Generic; using System.Linq; using System.Text; using Crestron.SimplSharp; using Crestron.SimplSharpPro; using Crestron.SimplSharpPro.DeviceSupport; using Crestron.SimplSharpPro.DM; using Crestron.SimplSharpPro.DM.Cards; using PepperDash.Essentials.Core; using PepperDash.Essentials.DM; namespace PepperDash.Essentials.DM.Cards { /// /// /// public abstract class DmSingleOutputCardControllerBase// : IRoutingInputsOutputs { public string Key { get; private set; } public uint Slot { get; private set; } public abstract eDmOutputCardType Type { get; } //public RoutingInputPort BackplaneAudioIn1 { get; private set; } //public RoutingInputPort BackplaneVideoIn1 { get; private set; } //public RoutingInputPort BackplaneAudioIn2 { get; private set; } //public RoutingInputPort BackplaneVideoIn2 { get; private set; } //public RoutingPortCollection InputPorts { get; private set; } //public RoutingPortCollection OutputPorts { get; private set; } public DmSingleOutputCardControllerBase(string key, uint cardSlot) { Key = key; Slot = cardSlot; //BackplaneAudioIn1 = new RoutingInputPort("backplaneAudioIn1", eRoutingSignalType.Audio, // eRoutingPortConnectionType.BackplaneOnly, cardSlot, this); //BackplaneVideoIn1 = new RoutingInputPort("backplaneVideoIn1", eRoutingSignalType.Video, // eRoutingPortConnectionType.BackplaneOnly, cardSlot, this); //BackplaneAudioIn2 = new RoutingInputPort("backplaneAudioIn2", eRoutingSignalType.Audio, // eRoutingPortConnectionType.BackplaneOnly, cardSlot + 1, this); //BackplaneVideoIn2 = new RoutingInputPort("backplaneVideoIn2", eRoutingSignalType.Video, // eRoutingPortConnectionType.BackplaneOnly, cardSlot + 1, this); //InputPorts = new RoutingPortCollection //{ // BackplaneAudioIn1, // BackplaneAudioIn2, // BackplaneVideoIn1, // BackplaneVideoIn2 //}; //OutputPorts = new RoutingPortCollection(); } ///// ///// Gets a physical port by name. Returns null if doesn't exist ///// //public RoutingInputPort GetInputPort(string key) //{ // return InputPorts.FirstOrDefault(p => p.Key.Equals(key, StringComparison.OrdinalIgnoreCase)); //} ///// ///// Gets a physical port by name. Returns null if doesn't exist ///// //public RoutingOutputPort GetOutputPort(string key) //{ // return OutputPorts.FirstOrDefault(p => p.Key.Equals(key, StringComparison.OrdinalIgnoreCase)); //} } /// /// /// public enum eDmOutputCardType { None, Dmc4kCoHd, Dmc4kHdo, DmcCoHd, DmcSoHd } }