gtkIOStream  1.7.0
GTK+ << C++ IOStream operators for GTK+. Now with ORBing, numerical computation, audio client and more ...
IIRCascade.H
Go to the documentation of this file.
1 /* Copyright 2000-2018 Matt Flax <flatmax@flatmax.org>
2  This file is part of GTK+ IOStream class set
3 
4  GTK+ IOStream is free software; you can redistribute it and/or modify
5  it under the terms of the GNU General Public License as published by
6  the Free Software Foundation; either version 2 of the License, or
7  (at your option) any later version.
8 
9  GTK+ IOStream is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You have received a copy of the GNU General Public License
15  along with GTK+ IOStream
16 */
17 
18 #ifndef IIRCASCADE_H
19 #define IIRCASCADE_H
20 
21 #include <DSP/IIR.H>
22 
25 class IIRCascade : public IIR
26 {
27  Eigen::Matrix<double, Eigen::Dynamic, 1> xTemp;
28 
29  void process();
30  int processStepped(const Eigen::Array<double, Eigen::Dynamic, Eigen::Dynamic> &BStep, const Eigen::Array<double, Eigen::Dynamic, Eigen::Dynamic> &AStep);
31 public:
32  IIRCascade();
33  virtual ~IIRCascade();
38  int process(const Eigen::Matrix<double, Eigen::Dynamic, 1> &x, Eigen::Matrix<double, Eigen::Dynamic, 1> const &y);
39  int process(const Eigen::Matrix<float, Eigen::Dynamic, 1> &x, Eigen::Matrix<float, Eigen::Dynamic, 1> const &y);
40  int process(const Eigen::Matrix<double, Eigen::Dynamic, 1> &x, Eigen::Matrix<double, Eigen::Dynamic, 1> const &y,
41  const Eigen::Array<double, Eigen::Dynamic, Eigen::Dynamic> &BStep, const Eigen::Array<double, Eigen::Dynamic, Eigen::Dynamic> &AStep);
42  int process(const Eigen::Matrix<float, Eigen::Dynamic, 1> &x, Eigen::Matrix<float, Eigen::Dynamic, 1> const &y,
43  const Eigen::Array<double, Eigen::Dynamic, Eigen::Dynamic> &BStep, const Eigen::Array<double, Eigen::Dynamic, Eigen::Dynamic> &AStep);
44 
47  int process(const Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> &x, Eigen::Matrix<double, Eigen::Dynamic, Eigen::Dynamic> const &y);
48 };
49 #endif // IIRCASCADE_H
float * x
void process()
Inner process.
Definition: IIRCascade.C:33
virtual ~IIRCascade()
Definition: IIRCascade.C:24
int processStepped(const Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic > &BStep, const Eigen::Array< double, Eigen::Dynamic, Eigen::Dynamic > &AStep)
Definition: IIRCascade.C:81
Definition: IIR.H:49
float * y
Eigen::Matrix< double, Eigen::Dynamic, 1 > xTemp
Temporary casecading signal.
Definition: IIRCascade.H:27
gtkIOStream: /tmp/gtkiostream/include/DSP/IIRCascade.H Source File
GTK+ IOStream  Beta