public void receive(float newSample){
  mBuffer.set(mBufferPointer,newSample);
  mBufferPointer++;
  if (mBufferPointer >= mBufferSize) {
    mBufferPointer=0;
  }
  float accumulator=0;
  accumulator+=mCoefficients[mCenterCoefficient] * mBuffer.get(mIndexMap[mBufferPointer][mCenterCoefficientMapIndex]);
  for (int x=0; x < mCenterCoefficientMapIndex; x+=2) {
    accumulator+=mCoefficients[x] * (mBuffer.get(mIndexMap[mBufferPointer][x]) + mBuffer.get(mIndexMap[mBufferPointer][x + 1]));
  }
  if (mListener != null) {
    mListener.receive((float)(accumulator * mGain));
  }
}

public void receive ( float newSample ) { mBuffer . set ( mBufferPointer , newSample ) ; mBufferPointer ++ ; if ( mBufferPointer >= mBufferSize ) { mBufferPointer = 0 ; } float accumulator = 0 ; accumulator += mCoefficients [ mCenterCoefficient ] * mBuffer . get ( mIndexMap [ mBufferPointer ] [ mCenterCoefficientMapIndex ] ) ; for ( int x = 0 ; x < mCenterCoefficientMapIndex ; x += 2 ) { accumulator += mCoefficients [ x ] * ( mBuffer . get ( mIndexMap [ mBufferPointer ] [ x ] ) + mBuffer . get ( mIndexMap [ mBufferPointer ] [ x + 1 ] ) ) ; } if ( mListener != null ) { mListener . receive ( ( float ) ( accumulator * mGain ) ) ; } }
calculate the filtered value by applying the coefficients against the complex samples in mbuffer
