|
From: | sumit kumar |
Subject: | Re: [Discuss-gnuradio] Softbits in gr-ieee 802.11 ? |
Date: | Fri, 19 Jan 2018 15:08:19 +0100 |
The GR constellation programming uses a base class that defines the API that will be SWIG-ified back into Python. So the base class must contain your "decision_maker_soft" method. Then you overload it for any inheriting class such as "constellation_bpsk". Hope this helps! - MLDOn Fri, Jan 19, 2018, at 8:43 AM, sumit kumar wrote:Actually I have to test it in a interference limited environment, I guess the soft demodulate will be needed. I saw your blog post about how you cleverly used your won constellations https://www.bastibl.net/constellation-objects / However when I try doing something like that, I get errors.For example, I defined my own function decision_maker_soft inside constellations_impl.h as followsclass constellation_bpsk_impl : public constellation_bpsk{public:constellation_bpsk_impl();~constellation_bpsk_impl();unsigned int decision_maker(const gr_complex *sample);float decision_maker_soft(const gr_complex *sample);};and then defined it in constellation_impl.cc asfloatconstellation_bpsk_impl::decision_maker_soft(const gr_complex *sample) { return (-4*real(*sample));}But when I call my function like thismod->decision_maker_soft from ls.cc (least square equalizer cc file), it says mod object has no member decision_maker_softWhy does mod object not look my decision_maker_soft as it is a method of constellation_bpsk_impl ??What am I missing here ?I thought that mod object is looking your decision_maker inside constellations_impl, it shud see mine too...
[Prev in Thread] | Current Thread | [Next in Thread] |