1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-26 09:48:45 -05:00

DownChannelizer: use more efficient double buffer half band decvimator

This commit is contained in:
f4exb 2016-11-01 17:57:46 +01:00
parent 5d5593bda7
commit 86c148ab10
2 changed files with 7 additions and 7 deletions

View File

@ -187,20 +187,20 @@ void DownChannelizer::applyConfiguration()
}
DownChannelizer::FilterStage::FilterStage(Mode mode) :
m_filter(new IntHalfbandFilter<DOWNCHANNELIZER_HB_FILTER_ORDER>),
m_filter(new IntHalfbandFilterDB<DOWNCHANNELIZER_HB_FILTER_ORDER>),
m_workFunction(0)
{
switch(mode) {
case ModeCenter:
m_workFunction = &IntHalfbandFilter<DOWNCHANNELIZER_HB_FILTER_ORDER>::workDecimateCenter;
m_workFunction = &IntHalfbandFilterDB<DOWNCHANNELIZER_HB_FILTER_ORDER>::workDecimateCenter;
break;
case ModeLowerHalf:
m_workFunction = &IntHalfbandFilter<DOWNCHANNELIZER_HB_FILTER_ORDER>::workDecimateLowerHalf;
m_workFunction = &IntHalfbandFilterDB<DOWNCHANNELIZER_HB_FILTER_ORDER>::workDecimateLowerHalf;
break;
case ModeUpperHalf:
m_workFunction = &IntHalfbandFilter<DOWNCHANNELIZER_HB_FILTER_ORDER>::workDecimateUpperHalf;
m_workFunction = &IntHalfbandFilterDB<DOWNCHANNELIZER_HB_FILTER_ORDER>::workDecimateUpperHalf;
break;
}
}

View File

@ -23,7 +23,7 @@
#include <QMutex>
#include "util/export.h"
#include "util/message.h"
#include "dsp/inthalfbandfilter.h"
#include "dsp/inthalfbandfilterdb.h"
#define DOWNCHANNELIZER_HB_FILTER_ORDER 48
@ -69,8 +69,8 @@ protected:
ModeUpperHalf
};
typedef bool (IntHalfbandFilter<DOWNCHANNELIZER_HB_FILTER_ORDER>::*WorkFunction)(Sample* s);
IntHalfbandFilter<DOWNCHANNELIZER_HB_FILTER_ORDER>* m_filter;
typedef bool (IntHalfbandFilterDB<DOWNCHANNELIZER_HB_FILTER_ORDER>::*WorkFunction)(Sample* s);
IntHalfbandFilterDB<DOWNCHANNELIZER_HB_FILTER_ORDER>* m_filter;
WorkFunction m_workFunction;
FilterStage(Mode mode);