MNE-CPP  0.1.9
A Framework for Electrophysiology
Public Types | Public Member Functions | List of all members
RTPROCESSINGLIB::FilterOverlapAdd Class Reference

Filtering with FFT convolution and the overlap add method for continous data streams. More...

#include <filter.h>

Public Types

typedef QSharedPointer< FilterOverlapAddSPtr
 
typedef QSharedPointer< const FilterOverlapAddConstSPtr
 

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 ()
 

Detailed Description

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.

Definition at line 215 of file filter.h.

Member Typedef Documentation

◆ ConstSPtr

Const shared pointer type for FilterOverlapAdd.

Definition at line 219 of file filter.h.

◆ SPtr

Shared pointer type for FilterOverlapAdd.

Definition at line 218 of file filter.h.

Member Function Documentation

◆ calculate() [1/2]

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

Parameters
[in]mataDataThe data which is to be filtered.
[in]filterKernelThe list of filter kernels to use.
[in]vecPicksChannel indexes to filter. Default is filter all channels.
[in]bFilterEndWhether to perform the overlap add in the beginning or end of the data. Default is set to true (end of data).
[in]bUseThreadsWhether to use multiple threads. Default is set to true.
[in]bKeepOverheadWhether to keep the delayed part of the data after filtering. Default is set to false .
Returns
The filtered data in form of a matrix.

◆ calculate() [2/2]

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

Parameters
[in]matDataThe data which is to be filtered.
[in]typeThe type of the filter: LPF, HPF, BPF, NOTCH (from enum FilterType).
[in]dCenterfreqThe center of the frequency.
[in]dBandwidthThe filter bandwidth. Ignored if FilterType is set to LPF,HPF. If NOTCH/BPF: bandwidth of stop-/passband.
[in]dTransitionThe transistion band determines the width of the filter slopes (steepness).
[in]dSFreqThe input data sampling frequency.
[in]iOrderRepresents the order of the filter, the higher the higher is the stopband attenuation. Default is 1024 taps.
[in]designMethodThe design method to use. Choose between Cosine and Tschebyscheff. Defaul is set to Cosine.
[in]vecPicksChannel indexes to filter. Default is filter all channels.
[in]bFilterEndWhether to perform the overlap add in the beginning or end of the data. Default is set to true (end of data).
[in]bUseThreadsWhether to use multiple threads. Default is set to true.
[in]bKeepOverheadWhether to keep the delayed part of the data after filtering. Default is set to false .
Returns
The filtered data in form of a matrix.

◆ reset()

void FilterOverlapAdd::reset ( )

Reset the stored overlap matrices

Definition at line 532 of file filter.cpp.


The documentation for this class was generated from the following files: