I want to implement some functions in uhd::usrp::multi_usrp, and access
these functions from gnu_uhd_usrp_source. Therefore, I modify the files
as follows:
-
multi_usrp.hpp
I define the function
virtual void enable_rx_fhop(const bool enb, size_t mboard = 0) = 0; -
multi_usrp.cpp
void enable_rx_fhop(const bool enb, size_t mboard)
{
…
}Then, I go to folder uhd/host/build/ and compile the files.
Everything is fine, and no error appears. -
gr_uhd_usrp_source.h
define:
virtual void enable_rx_fhop_gr(const bool enb, size_t mboard = 0) =
0; -
gr_uhd_usrp_source.cc
void enable_rx_fhop_gr(const bool enb, size_t mboard)
{
_dev->enable_rx_fhop(enb, mboard);
}
When I compile the files, I get the following error message:
gr_uhd_usrp_source.cc: In member function ‘virtual void
uhd_usrp_source_impl::enable_rx_fhop_gr(bool, size_t)’:
gr_uhd_usrp_source.cc:298: error: ‘class uhd::usrp::multi_usrp’ has no
member named ‘enable_rx_fhop’
make[5]: *** [gr_uhd_usrp_source.lo] Error 1
As I said, I compiled the UHD successfully, and cannot understand why
gr-source cannot find the functions. So, any suggestions? Thanks
Peng