So, I've tried the following:
1) Derive a class from ofdm_equalizer_base
2) Add the function get_base_ptr() to the derived class. This function returns a pointer to the derived class
Now, In grc, when passing the equalizer to ofdm_frame_equalizer_vcvc I've got the following error:
Param - Equalizer(equalizer):
Value "payload_equalizer.get_base_ptr()" cannot be evaluated:
tr1::bad_weak_ptr
I've
looked for information about this error, and it seems that it appears
when using shared_from_this() on an object which has no shared_ptr
pointing to it. However, In my understanding, when the equalizer is
created (function make), a shared_ptr is created.
Here my get_base_ptr() function:
sptr get_base_ptr()
{
return boost::enable_shared_from_this<ofdm_my_equalizer>::shared_from_this();
}
Any ideas?
Oscar