/* * DTS.Slice.Control.Event.Module.Channel.cs * * Copyright © 2009 * Diversified Technical Systems, Inc. * All Rights Reserved */ using DTS.Common.Utilities; namespace DTS.Common.SerializationPlus { /// /// A filter for DTS.Slice.Control.Event.Module.Channels. /// public abstract class Filter : Exceptional, IFilter { /// /// A descriptive designation for the filter. /// public abstract string Name { get; } /// /// Get the value indicating whether or not this filter /// corresponds to a CFC value. /// public abstract bool IsCfc { get; } /// /// Get a designation for this filter. /// public abstract ChannelFilter Type { get; } public abstract char IsoDescription { get; } /// /// Get the cutoff frequency for this filter. /// public abstract double CutoffFrequencyHz { get; } /// /// Apply the filter to the specified input. /// /// /// /// The input to the filter. /// /// /// /// The to be /// filtered from the channel. /// /// /// controls whether filtered data is adjusted by one sample to match TDC behavior /// 8747 /// /// /// The filtering of the input. /// /// public abstract double[] Apply( DTS.Slice.Control.Event.Module.Channel input, Slice.Control.Event.Module.Channel.DataDisplayUnits displayUnits, bool bUseLegacyTDCSoftwareFilterAdjustment); public abstract double[] Apply( double[] data, double sampleRate, bool bUseLegacyTDCSoftwareFilterAdjustment); /// /// the ToString is already overloaded, but we sometimes need the base name, not the decorated name that /// is returned in ToString. /// /// public abstract string ToBaseString(); } }