On Wed, 2006-04-26 at 17:53 -0700, Eric Blossom wrote:
Hi Ilia,
Thanks for diving in.
Chuck,
After taking a look at the 0.9 code (atsc_rx.cc), it looks like we were
instantiating atsci_equalizer_lms.
atsci_equalizer_lms uses a single FIR filter.
atsci_equalizer_lms2 uses feedback and feedforward. Not sure we ever
got it sorted out.
That's even more confusing ;) I'm working from GrAtscEqualizer.cc|h.
What part controls which symbols get into python? I have it compiling
mostly as it is in GrAtscEqualizer, but get this:
from gnuradio import atsc
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/usr/local/lib/python2.4/site-packages/gnuradio/atsc.py", line
4, in ?
import _atsc
ImportError: /usr/local/lib/python2.4/site-packages/gnuradio/_atsc.so:
undefined symbol: _ZN14atsc_equalizerC1Ev
In atsc_equalizer.cc
--------------------
atsc_equalizer::atsc_equalizer(atsci_equalizer *equalizer)
: gr_sync_block("atsc_equalizer",
gr_make_io_signature(2, 2, sizeof(float)),
gr_make_io_signature(2, 2, sizeof(float)))
{
d_equalizer = equalizer;
}
and in atsc_equalizer.h
-----------------------
class atsc_equalizer : public gr_sync_block
{
friend atsc_equalizer_sptr atsc_make_equalizer();
atsc_equalizer();
public:
void forecast (int noutput_items, gr_vector_int
&ninput_items_required);
int work (int noutput_items,
gr_vector_const_void_star &input_items,
gr_vector_void_star &output_items);
void reset() { /* nop */ }
atsc_equalizer(atsci_equalizer *equalizer);
protected:
atsci_equalizer *d_equalizer;
};