- greatly simplified
- Works for all interpolation ratios - use Processor::Buffer for FIR feeding git-svn-id: http://moon:8086/svn/software/trunk/libsrc/cpp@975 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
@@ -89,22 +89,22 @@ public:
|
||||
{
|
||||
size_t adv = m_interpolator.getAdv();
|
||||
radio_float_t mu = m_interpolator.getMu();
|
||||
if (adv)
|
||||
{
|
||||
if (m_bufferIn.len() < adv)
|
||||
{
|
||||
break;
|
||||
}
|
||||
ComplexScalar xout = m_bufferIn.readAt(adv-1);
|
||||
FirComplex::feed(xout);
|
||||
|
||||
if (m_bufferIn.len() < adv)
|
||||
{
|
||||
break;
|
||||
}
|
||||
|
||||
if (adv != 0)
|
||||
{
|
||||
FirComplex::feed(m_bufferIn, adv);
|
||||
|
||||
// Partial filter responses
|
||||
for (int i=0; i < m_M; i++)
|
||||
{
|
||||
m_h[i] = FirComplex::processReal(column(m_coeff, i));
|
||||
}
|
||||
}
|
||||
|
||||
// Combine
|
||||
ComplexScalar yout = horner(mu);
|
||||
m_bufferOut.write(&yout, 1);
|
||||
|
||||
Reference in New Issue
Block a user