class FIRFilter : public Pipe Digital FIR filter implementation API.
| | FIRFilter (void) Default constructor. |
| | FIRFilter (int length, float Sample) Construct an empty filter instance. |
| | FIRFilter (const FIRFilter& model) Copy constructor. |
| | ~FIRFilter (void) Filter destructor. |
| | clone (void) const Clone a FIR filter. |
| | dataCheck (const TSeries& ts) const Check input data validity. |
| | getCurrentTime (void) const Get the current time. |
| | getLength (void) const throw() Get the filter length. |
| | getRate (void) const throw() Get the sample rate. |
| | getStartTime (void) const Get the start time. |
| | getStat (void) const throw() Test the history status. |
| | getTimeDelay (void) const Get the current time. |
| | inUse (void) const Test the filter acitivity status. |
| | dump (std::ostream& ostr) const throw() Print the Filter status. |
| | apply (const TSeries& in) Filter a Time Series. |
| | apply (const TSeries& in, TSeries& out) throw(std::invalid_argument) Filter a TSeries into an output object. |
| | apply (int N, const float* in, float* out) Filter a float array. |
| | apply (int N, const double* in, double* out) Filter a float array. |
| | apply (int N, const fComplex* in, fComplex* out) Filter a float array. |
| | reset (void) Set filter coefficients. |
| | operator= (const FIRFilter& model) throw() Copy constructor. |
| | setCoefs (int N, const double* Coefs) throw() Set filter coefficients. |
| | setCoefs (const double* Coefs) throw() Modify filter coefficients. |
| | setHistory (int N, const float* Hist=0, Time t=Time(0)) throw() Set history. |
| | setHistory (int N, const double* Hist, Time t=Time(0)) throw() Set history. |
| | setHistory (int N, const fComplex* Hist, Time t=Time(0)) throw() Set history. |
| | setLength (int N) throw() Set Length. |
| | setRate (double F) throw() Set the filter sample Rate. |
| | Xfer (fComplex& coeff, double f) const throw() Get a transfer coefficent of a Filter. |
| | Xfer (fComplex* tf, const float* freqs, int points) const throw() Get the transfer function of a Filter. |
| | Xfer (float Fmin=0.0, float Fmax=0.0, float dF=1.0) const throw() Get the transfer function of a Filter. |
| | xfer (fComplex& coeff, double f) const throw() Get a transfer coefficent of a Filter. |
The Filter class object implements a digital FIR filter that can be used to filter time series (TSeries) data. Filter class instances carry the signal history as well as the filter coefficients to prevent the introduction of edge effect when filtering a long series in serveral pieces. Each signal (channel) to be filtered must use a separate Filter instance.
FIRFilter(int length, float Sample)
Sample - Nominal sampling rate.
FIRFilter(const FIRFilter& model)
virtual ~FIRFilter(void)
virtual FIRFilter* clone(void) const
void dataCheck(const TSeries& ts) const
Time getCurrentTime(void) const
int getLength(void) const throw()
double getRate(void) const throw()
Time getStartTime(void) const
bool getStat(void) const throw()
Interval getTimeDelay(void) const
bool inUse(void) const
void dump(std::ostream& ostr) const throw()
TSeries apply(const TSeries& in)
TSeries& apply(const TSeries& in, TSeries& out) throw(std::invalid_argument)
out - Time series into which the filter response will be stored.
void apply(int N, const float* in, float* out)
in - Float array containing the input series.
out - Float array to contain the filter response. the end of
out may overlap the start of in.
void apply(int N, const double* in, double* out)
in - Float array containing the input series.
out - Float array to contain the filter response. the end of
out may overlap the start of in.
void apply(int N, const fComplex* in, fComplex* out)
in - Float array containing the input series.
out - Float array to contain the filter response. the end of
out may overlap the start of in.
void reset(void)
Coefs - A list of filter coefficients (filter impulse response).
FIRFilter& operator=(const FIRFilter& model) throw()
void setCoefs(int N, const double* Coefs) throw()
Coefs - A list of filter coefficients (filter impulse response).
void setCoefs(const double* Coefs) throw()
void setHistory(int N, const float* Hist=0, Time t=Time(0)) throw()
Hist - Filter history vector.
t - Time of the last sample in the history list.
void setHistory(int N, const double* Hist, Time t=Time(0)) throw()
Hist - Filter history vector.
t - Time of the last sample in the history list.
void setHistory(int N, const fComplex* Hist, Time t=Time(0)) throw()
Hist - Filter history vector.
t - Time of the last sample in the history list.
void setLength(int N) throw()
void setRate(double F) throw()
virtual bool Xfer(fComplex& coeff, double f) const throw()
f - Frequency at which to sample the transfer function.
bool Xfer(fComplex* tf, const float* freqs, int points) const throw()
points - Number of points.
tf - Transfer function (return)
FSeries Xfer(float Fmin=0.0, float Fmax=0.0, float dF=1.0) const throw()
Fmax - Maximum frequency at which to sample the transfer function.
dF - Frequency step.
bool xfer(fComplex& coeff, double f) const throw()
f - Frequency at which to sample the transfer function.
alphabetic index hierarchy of classes
Please send questions and comments to zweizig_j@ligo.caltech.edu
generated by doc++