mirror of
https://github.com/EttusResearch/uhd.git
synced 2026-10-25 17:36:10 +00:00
extension: Fix set_*x_antenna() and update C++
This fixes the segfault when calling into set_*x_antenna() within the example extension and updates the C++ version to UHD default (20 at the moment) to be able to build again. The segfault was caused by the extension example never initializing the pointers to _*x_antenna. It still doesn't do that but refers to the radio's setter and getter methods now.
This commit is contained in:
parent
2951e32013
commit
c1b344b732
@ -9,7 +9,7 @@ cmake_minimum_required(VERSION 3.12)
|
||||
project(EXTENSION_EXAMPLE CXX)
|
||||
|
||||
### Configure Compiler ########################################################
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_STANDARD 20)
|
||||
|
||||
if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" AND ${CMAKE_CXX_COMPILER_ID} STREQUAL "Clang")
|
||||
set(CMAKE_EXE_LINKER_FLAGS "-lthr ${CMAKE_EXE_LINKER_FLAGS}")
|
||||
|
||||
@ -333,6 +333,37 @@ public:
|
||||
return "Example_Extension";
|
||||
}
|
||||
|
||||
void set_rx_antenna(const std::string& ant, const size_t chan) override
|
||||
{
|
||||
_radio->set_rx_antenna(ant, chan);
|
||||
}
|
||||
|
||||
void set_tx_antenna(const std::string& ant, const size_t chan) override
|
||||
{
|
||||
_radio->set_tx_antenna(ant, chan);
|
||||
}
|
||||
|
||||
std::string get_rx_antenna(const size_t chan) const override
|
||||
{
|
||||
return _radio->get_rx_antenna(chan);
|
||||
}
|
||||
|
||||
std::string get_tx_antenna(const size_t chan) const override
|
||||
{
|
||||
return _radio->get_tx_antenna(chan);
|
||||
}
|
||||
|
||||
|
||||
std::vector<std::string> get_rx_antennas(const size_t chan) const override
|
||||
{
|
||||
return _radio->get_rx_antennas(chan);
|
||||
}
|
||||
|
||||
std::vector<std::string> get_tx_antennas(const size_t chan) const override
|
||||
{
|
||||
return _radio->get_tx_antennas(chan);
|
||||
}
|
||||
|
||||
private:
|
||||
uhd::rfnoc::radio_control::sptr _radio;
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user