Perform a real Discrete Fourier Transform (DFT; implemented
        using a Fast Fourier Transform algorithm, FFT) of the current
        sample from the signal multiplied by the smoothing window.

        See numpy.rfft for information about the Fourier transform.

def _get_row_amplitudes(self):
        """
        Perform a real Discrete Fourier Transform (DFT; implemented
        using a Fast Fourier Transform algorithm, FFT) of the current
        sample from the signal multiplied by the smoothing window.

        See numpy.rfft for information about the Fourier transform.
        """

        sample_rate = self.signal.sample_rate

        # A signal window *must* span one sample rate, irrespective of interval length.
        signal_window = tile(self.signal(), ceil(1.0/self.signal.interval_length))

        if self.windowing_function == None:
            smoothed_window = signal_window[0:sample_rate]
        else:
            smoothed_window = signal_window[0:sample_rate] * self.windowing_function(sample_rate)

        row_amplitudes = abs(fft.rfft(smoothed_window))[0:sample_rate/2]
        row_amplitudes = row_amplitudes.reshape(1,sample_rate/2.0)

        filter_responses = multiply(self.cochlear_channels, row_amplitudes)
        sheet_responses = zeros(self._num_of_channels)

        for channel in range(0,self._num_of_channels):
            time_responses = abs(fft.ifft(filter_responses[channel]))
            sheet_responses[channel] = sum(time_responses) / (sample_rate/2.0)

        return sheet_responses.reshape(self._num_of_channels, 1)