#include <flt.h>
flt::CInterpolatorに対する継承グラフ
CDecimatorは、16bit固定小数点によるIIRフィルタのクラスである。VisauDSP++の fir_interp_fr16()関数のラッパーとして働く。
Public メソッド | |
CInterpolator (const shortfract h[], int tap, int ratio, shortfract d[]=0) | |
内部変数を初期化 | |
virtual void | run (const shortfract input[], shortfract output[], int count) |
フィルタ実行メソッド |
flt::CInterpolator::CInterpolator | ( | const shortfract | h[], | |
int | tap, | |||
int | ratio, | |||
shortfract | d[] = 0 | |||
) |
内部変数を初期化
h | 伝達関数H(係数配列)を与える。 | |
tap | フィルタのタップ数を与える。インターポレーション比の整数倍でなければならない。 | |
ratio | インターポレーション比を与える | |
d | 内部ディレイライン |
00125 : CFIRFilter( h, tap/ratio, d ) 00126 { 00127 state.l = ratio; // インターポレーション比を内部変数に格納 00128 }
void flt::CInterpolator::run | ( | const shortfract | input[], | |
shortfract | output[], | |||
int | count | |||
) | [virtual] |
フィルタ実行メソッド
input | shortfract型の入力配列。フィルタへの入力をここに与える。 | |
output | shortfract型の出力配列。フィルタの実行結果がここに格納される。 サイズはcount*インターポレーション比。 | |
count | input引数の要素数。 |
flt::CFIRFilterを再定義しています。
00134 { 00135 fir_interp_fr16( // VisualDSP++のフィルタ関数 00136 (fract16 *)input, 00137 (fract16 *)output, 00138 count, 00139 &state 00140 ); 00141 }