diff --git a/CMakeLists.txt b/CMakeLists.txt index 916687b..160f257 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -25,7 +25,7 @@ cmake_minimum_required(VERSION 2.8.12...3.10) project(SoapyUHD CXX C) enable_testing() -set(CMAKE_CXX_STANDARD 14) +set(CMAKE_CXX_STANDARD 17) #select the release build type by default to get optimization flags if(NOT CMAKE_BUILD_TYPE) diff --git a/SoapyUHDDevice.cpp b/SoapyUHDDevice.cpp index 41140a8..305d3b2 100644 --- a/SoapyUHDDevice.cpp +++ b/SoapyUHDDevice.cpp @@ -361,6 +361,9 @@ class SoapyUHDDevice : public SoapySDR::Device switch (md.event_code) { +#if UHD_VERSION >= 4100000 + case uhd::async_metadata_t::EVENT_CODE_OK: break; +#endif case uhd::async_metadata_t::EVENT_CODE_BURST_ACK: flags |= SOAPY_SDR_END_BURST; break; case uhd::async_metadata_t::EVENT_CODE_UNDERFLOW: return SOAPY_SDR_UNDERFLOW; case uhd::async_metadata_t::EVENT_CODE_SEQ_ERROR: return SOAPY_SDR_CORRUPTION; diff --git a/UHDSoapyDevice.cpp b/UHDSoapyDevice.cpp index 88641c5..074f225 100644 --- a/UHDSoapyDevice.cpp +++ b/UHDSoapyDevice.cpp @@ -568,12 +568,12 @@ class UHDSoapyRxStream : public uhd::rx_streamer _device->closeStream(_stream); } - size_t get_num_channels(void) const + size_t get_num_channels(void) const override { return _nchan; } - size_t get_max_num_samps(void) const + size_t get_max_num_samps(void) const override { return _device->getStreamMTU(_stream); } @@ -584,7 +584,7 @@ class UHDSoapyRxStream : public uhd::rx_streamer uhd::rx_metadata_t &md, const double timeout = 0.1, const bool one_packet = false - ) + ) override { size_t total = 0; md.reset(); @@ -674,7 +674,7 @@ class UHDSoapyRxStream : public uhd::rx_streamer return total; } - void issue_stream_cmd(const uhd::stream_cmd_t &stream_cmd) + void issue_stream_cmd(const uhd::stream_cmd_t &stream_cmd) override { int flags = 0; if (not stream_cmd.stream_now) flags |= SOAPY_SDR_HAS_TIME; @@ -758,12 +758,12 @@ class UHDSoapyTxStream : public uhd::tx_streamer _device->closeStream(_stream); } - size_t get_num_channels(void) const + size_t get_num_channels(void) const override { return _nchan; } - size_t get_max_num_samps(void) const + size_t get_max_num_samps(void) const override { return _device->getStreamMTU(_stream); } @@ -773,7 +773,7 @@ class UHDSoapyTxStream : public uhd::tx_streamer size_t nsamps_per_buff, const uhd::tx_metadata_t &md, const double timeout = 0.1 - ) + ) override { //perform activation at the latest/on the first call to send if (not _active) @@ -808,7 +808,7 @@ class UHDSoapyTxStream : public uhd::tx_streamer return total; } - bool recv_async_msg(uhd::async_metadata_t &md, double timeout = 0.1) + bool recv_async_msg(uhd::async_metadata_t &md, double timeout = 0.1) override { size_t chanMask = 0; int flags = 0;