diff options
Diffstat (limited to 'lib/source_impl.cc')
-rw-r--r-- | lib/source_impl.cc | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/source_impl.cc b/lib/source_impl.cc index e4c9be6..b9fead3 100644 --- a/lib/source_impl.cc +++ b/lib/source_impl.cc @@ -76,6 +76,10 @@ #include <airspy_source_c.h> #endif +#ifdef ENABLE_SOAPY +#include <soapy_source_c.h> +#endif + #include "arg_helpers.h" #include "source_impl.h" @@ -142,6 +146,9 @@ source_impl::source_impl( const std::string &args ) #ifdef ENABLE_AIRSPY dev_types.push_back("airspy"); #endif +#ifdef ENABLE_SOAPY + dev_types.push_back("soapy"); +#endif std::cerr << "gr-osmosdr " << GR_OSMOSDR_VERSION << " (" << GR_OSMOSDR_LIBVER << ") " << "gnuradio " << gr::version() << std::endl; @@ -206,6 +213,10 @@ source_impl::source_impl( const std::string &args ) BOOST_FOREACH( std::string dev, airspy_source_c::get_devices() ) dev_list.push_back( dev ); #endif +#ifdef ENABLE_SOAPY + BOOST_FOREACH( std::string dev, soapy_source_c::get_devices() ) + dev_list.push_back( dev ); +#endif // std::cerr << std::endl; // BOOST_FOREACH( std::string dev, dev_list ) @@ -308,6 +319,13 @@ source_impl::source_impl( const std::string &args ) } #endif +#ifdef ENABLE_SOAPY + if ( dict.count("soapy") ) { + soapy_source_c_sptr src = make_soapy_source_c( arg ); + block = src; iface = src.get(); + } +#endif + if ( iface != NULL && long(block.get()) != 0 ) { _devs.push_back( iface ); |