using System; namespace ChanSort.Api { #region enum SignalSource /// /// Bitmask for channel and list classification. /// An individual channel can only have one bit of each group set. /// A ChannelList can have multiple bits set to indicate which type of channels it can hold. /// [Flags] public enum SignalSource { // bit 1+2: analog/digital MaskAnalogDigital = 0x0003, Analog = 0x0001, Digital = 0x0002, // bit 4+5+6+7+8: AvInput/Antenna/Cable/Sat/IP MaskAntennaCableSat = 0x00F8, AvInput = 0x0008, Antenna = 0x0010, Cable = 0x0020, Sat = 0x0040, IP = 0x0080, // bit 9+10: TV/Radio MaskTvRadio = 0x0300, Tv = 0x0100, Radio = 0x0200, TvAndRadio = Tv | Radio, // bit 13-16: Preset list selector (AstraHD+, Freesat, TivuSat, CanalDigitalSat, ... for Samsung) MaskProvider = 0xFC00, StandardSat = 0 << 12, AstraHdPlus = 1 << 12, Freesat = 2 << 12, TivuSat = 3 << 12, CanalDigital = 4 << 12, DigitalPlus = 5 << 12, CyfraPlus = 6 << 12, StandardCable = 0 << 12, CablePrime = 1 << 12, AnalogC = Analog + Cable, AnalogT = Analog + Antenna, AnalogCT = Analog + Cable + Antenna, DvbC = Digital + Cable, DvbT = Digital + Antenna, DvbCT = Digital + Cable + Antenna, DvbS = Digital + Sat, SatIP = Digital + Sat + IP, CablePrimeD = Digital + Cable + CablePrime, HdPlusD = Digital + Sat + AstraHdPlus, FreesatD = Digital + Sat + Freesat, TivuSatD = Digital + Sat + TivuSat, CanalDigitalSatD = Digital + Sat + CanalDigital, DigitalPlusD = Digital + Sat + DigitalPlus, CyfraPlusD = Digital + Sat + CyfraPlus, All = MaskAnalogDigital | MaskAntennaCableSat | MaskTvRadio } #endregion [Flags] public enum Favorites : byte { A = 0x01, B = 0x02, C = 0x04, D = 0x08, E = 0x10 } public enum UnsortedChannelMode { AppendInOrder=0, AppendAlphabetically=1, MarkDeleted=2 } [Flags] public enum ChannelNameEditMode { None = 0x00, Analog = 0x01, Digital = 0x02, All = Analog|Digital } }