MNE-CPP
0.1.9
A Framework for Electrophysiology
|
Filtering with FFT convolution and the overlap add method for continous data streams. More...
#include <filter.h>
Public Types | |
typedef QSharedPointer< FilterOverlapAdd > | SPtr |
typedef QSharedPointer< const FilterOverlapAdd > | ConstSPtr |
Public Member Functions | |
Eigen::MatrixXd | calculate (const Eigen::MatrixXd &matData, int type, double dCenterfreq, double dBandwidth, double dTransition, double dSFreq, int iOrder=1024, int designMethod=FilterKernel::m_designMethods.indexOf(FilterParameter("Cosine")), const Eigen::RowVectorXi &vecPicks=Eigen::RowVectorXi(), bool bFilterEnd=true, bool bUseThreads=true, bool bKeepOverhead=false) |
Eigen::MatrixXd | calculate (const Eigen::MatrixXd &mataData, const RTPROCESSINGLIB::FilterKernel &filterKernel, const Eigen::RowVectorXi &vecPicks=Eigen::RowVectorXi(), bool bFilterEnd=true, bool bUseThreads=true, bool bKeepOverhead=false) |
void | reset () |
Filtering with FFT convolution and the overlap add method for continous data streams.
Filtering with FFT convolution and the overlap add method for continous data streams. This class will hold all needed information about the last block in order to overlap it with the current one.
typedef QSharedPointer<const FilterOverlapAdd> RTPROCESSINGLIB::FilterOverlapAdd::ConstSPtr |
Const shared pointer type for FilterOverlapAdd.
typedef QSharedPointer<FilterOverlapAdd> RTPROCESSINGLIB::FilterOverlapAdd::SPtr |
Shared pointer type for FilterOverlapAdd.
Eigen::MatrixXd RTPROCESSINGLIB::FilterOverlapAdd::calculate | ( | const Eigen::MatrixXd & | mataData, |
const RTPROCESSINGLIB::FilterKernel & | filterKernel, | ||
const Eigen::RowVectorXi & | vecPicks = Eigen::RowVectorXi() , |
||
bool | bFilterEnd = true , |
||
bool | bUseThreads = true , |
||
bool | bKeepOverhead = false |
||
) |
Calculates the filtered version of the raw input data based on a given list filters
[in] | mataData | The data which is to be filtered. |
[in] | filterKernel | The list of filter kernels to use. |
[in] | vecPicks | Channel indexes to filter. Default is filter all channels. |
[in] | bFilterEnd | Whether to perform the overlap add in the beginning or end of the data. Default is set to true (end of data). |
[in] | bUseThreads | Whether to use multiple threads. Default is set to true. |
[in] | bKeepOverhead | Whether to keep the delayed part of the data after filtering. Default is set to false . |
Eigen::MatrixXd RTPROCESSINGLIB::FilterOverlapAdd::calculate | ( | const Eigen::MatrixXd & | matData, |
int | type, | ||
double | dCenterfreq, | ||
double | dBandwidth, | ||
double | dTransition, | ||
double | dSFreq, | ||
int | iOrder = 1024 , |
||
int | designMethod = FilterKernel::m_designMethods.indexOf(FilterParameter("Cosine")) , |
||
const Eigen::RowVectorXi & | vecPicks = Eigen::RowVectorXi() , |
||
bool | bFilterEnd = true , |
||
bool | bUseThreads = true , |
||
bool | bKeepOverhead = false |
||
) |
Creates a user designed filter kernel and filters the raw input data
[in] | matData | The data which is to be filtered. |
[in] | type | The type of the filter: LPF, HPF, BPF, NOTCH (from enum FilterType). |
[in] | dCenterfreq | The center of the frequency. |
[in] | dBandwidth | The filter bandwidth. Ignored if FilterType is set to LPF,HPF. If NOTCH/BPF: bandwidth of stop-/passband. |
[in] | dTransition | The transistion band determines the width of the filter slopes (steepness). |
[in] | dSFreq | The input data sampling frequency. |
[in] | iOrder | Represents the order of the filter, the higher the higher is the stopband attenuation. Default is 1024 taps. |
[in] | designMethod | The design method to use. Choose between Cosine and Tschebyscheff. Defaul is set to Cosine. |
[in] | vecPicks | Channel indexes to filter. Default is filter all channels. |
[in] | bFilterEnd | Whether to perform the overlap add in the beginning or end of the data. Default is set to true (end of data). |
[in] | bUseThreads | Whether to use multiple threads. Default is set to true. |
[in] | bKeepOverhead | Whether to keep the delayed part of the data after filtering. Default is set to false . |
void FilterOverlapAdd::reset | ( | ) |
Reset the stored overlap matrices
Definition at line 532 of file filter.cpp.