/// <summary>
        /// Wählt eine Quellgruppe an.
        /// </summary>
        /// <param name="group">Die Daten zur Quellgruppe.</param>
        /// <returns>Gesetzt, wenn es sich um eine DVB-T Quellgruppe handelt.</returns>
        private Channel_T?Tune(TerrestrialGroup group)
        {
            // Not us
            if (group == null)
            {
                return(null);
            }

            // Validate
            if (FrontendType != FrontendType.Terrestrial)
            {
                throw new DVBException("Expected " + FrontendType.ToString() + " Channel");
            }

            // Helper
            var data =
                new Channel_T
            {
                Frequency = group.Frequency,
                Inversion = SpectrumInversion.Off,
                Scan      = false,
            };

            // Check supported modes
            switch (group.Bandwidth)
            {
            case Bandwidths.Six: data.Bandwidth = BandwidthType.Six; break;

            case Bandwidths.Seven: data.Bandwidth = BandwidthType.Seven; break;

            case Bandwidths.Eight: data.Bandwidth = BandwidthType.Eight; break;

            case Bandwidths.NotDefined: data.Bandwidth = BandwidthType.None; break;

            default: data.Bandwidth = BandwidthType.Auto; break;
            }

            // Process
            return(data.SetChannel(this));
        }
Beispiel #2
0
 private static extern DVBError _GetChannel( IntPtr classPointer, out Channel_T rChannel );
Beispiel #3
0
 private static extern DVBError _SetChannel( IntPtr classPointer, Channel_T rChannel, bool bPowerOnly );
 private static extern DVBError _GetChannel(IntPtr classPointer, out Channel_T rChannel);
 private static extern DVBError _SetChannel(IntPtr classPointer, Channel_T rChannel, bool bPowerOnly);