diff options
author | Nicholas Corgan <nick.corgan@ettus.com> | 2014-08-13 08:44:31 -0700 |
---|---|---|
committer | Martin Braun <martin.braun@ettus.com> | 2014-09-01 17:58:24 +0200 |
commit | 654c5b06c086ce8b13a5be07e680004c96da8501 (patch) | |
tree | be8adaf06d3b1cebbd20e1b1856df61bfa06ce87 /host/lib/usrp/cores | |
parent | d88ae533c48495dbb86ca5fe2e7ddd05ab3c8a4e (diff) | |
download | uhd-654c5b06c086ce8b13a5be07e680004c96da8501.tar.gz uhd-654c5b06c086ce8b13a5be07e680004c96da8501.tar.bz2 uhd-654c5b06c086ce8b13a5be07e680004c96da8501.zip |
Added missing pure virtual destructors to base classes
Diffstat (limited to 'host/lib/usrp/cores')
36 files changed, 146 insertions, 34 deletions
diff --git a/host/lib/usrp/cores/gpio_core_200.cpp b/host/lib/usrp/cores/gpio_core_200.cpp index e55f1f51e..4f1c25a0b 100644 --- a/host/lib/usrp/cores/gpio_core_200.cpp +++ b/host/lib/usrp/cores/gpio_core_200.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -27,6 +27,10 @@ using namespace uhd; using namespace usrp; +gpio_core_200::~gpio_core_200(void){ + /* NOP */ +} + class gpio_core_200_impl : public gpio_core_200{ public: gpio_core_200_impl(wb_iface::sptr iface, const size_t base, const size_t rb_addr): @@ -105,6 +109,10 @@ gpio_core_200::sptr gpio_core_200::make(wb_iface::sptr iface, const size_t base, return sptr(new gpio_core_200_impl(iface, base, rb_addr)); } +gpio_core_200_32wo::~gpio_core_200_32wo(void){ + /* NOP */ +} + class gpio_core_200_32wo_impl : public gpio_core_200_32wo{ public: gpio_core_200_32wo_impl(wb_iface::sptr iface, const size_t base): diff --git a/host/lib/usrp/cores/gpio_core_200.hpp b/host/lib/usrp/cores/gpio_core_200.hpp index 15fe5f2dd..164437f40 100644 --- a/host/lib/usrp/cores/gpio_core_200.hpp +++ b/host/lib/usrp/cores/gpio_core_200.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -32,6 +32,8 @@ public: typedef uhd::usrp::dboard_iface::unit_t unit_t; typedef uhd::usrp::dboard_iface::atr_reg_t atr_reg_t; + virtual ~gpio_core_200(void) = 0; + //! makes a new GPIO core from iface and slave base static sptr make(uhd::wb_iface::sptr iface, const size_t base, const size_t rb_addr); @@ -56,6 +58,8 @@ public: typedef uhd::usrp::dboard_iface::atr_reg_t atr_reg_t; + virtual ~gpio_core_200_32wo(void) = 0; + static sptr make(uhd::wb_iface::sptr iface, const size_t); virtual void set_atr_reg(const atr_reg_t atr, const boost::uint32_t value) = 0; diff --git a/host/lib/usrp/cores/i2c_core_100.cpp b/host/lib/usrp/cores/i2c_core_100.cpp index 9e8a226f2..796447e0c 100644 --- a/host/lib/usrp/cores/i2c_core_100.cpp +++ b/host/lib/usrp/cores/i2c_core_100.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -53,6 +53,10 @@ using namespace uhd; +i2c_core_100::~i2c_core_100(void){ + /* NOP */ +} + class i2c_core_100_impl : public i2c_core_100{ public: i2c_core_100_impl(wb_iface::sptr iface, const size_t base): diff --git a/host/lib/usrp/cores/i2c_core_100.hpp b/host/lib/usrp/cores/i2c_core_100.hpp index 4e7a2874b..40079e79a 100644 --- a/host/lib/usrp/cores/i2c_core_100.hpp +++ b/host/lib/usrp/cores/i2c_core_100.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -28,6 +28,8 @@ class i2c_core_100 : boost::noncopyable, public uhd::i2c_iface{ public: typedef boost::shared_ptr<i2c_core_100> sptr; + virtual ~i2c_core_100(void) = 0; + //! makes a new i2c core from iface and slave base static sptr make(uhd::wb_iface::sptr iface, const size_t base); }; diff --git a/host/lib/usrp/cores/i2c_core_100_wb32.cpp b/host/lib/usrp/cores/i2c_core_100_wb32.cpp index df6e6ff72..a85cdea42 100644 --- a/host/lib/usrp/cores/i2c_core_100_wb32.cpp +++ b/host/lib/usrp/cores/i2c_core_100_wb32.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2013 Ettus Research LLC +// Copyright 2011-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -53,6 +53,10 @@ using namespace uhd; +i2c_core_100_wb32::~i2c_core_100_wb32(void){ + /* NOP */ +} + class i2c_core_100_wb32_wb32_impl : public i2c_core_100_wb32{ public: i2c_core_100_wb32_wb32_impl(wb_iface::sptr iface, const size_t base): diff --git a/host/lib/usrp/cores/i2c_core_100_wb32.hpp b/host/lib/usrp/cores/i2c_core_100_wb32.hpp index b5912ba9a..04fe21c68 100644 --- a/host/lib/usrp/cores/i2c_core_100_wb32.hpp +++ b/host/lib/usrp/cores/i2c_core_100_wb32.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2013 Ettus Research LLC +// Copyright 2011-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -28,6 +28,8 @@ class i2c_core_100_wb32 : boost::noncopyable, public uhd::i2c_iface{ public: typedef boost::shared_ptr<i2c_core_100_wb32> sptr; + virtual ~i2c_core_100_wb32(void) = 0; + //! makes a new i2c core from iface and slave base static sptr make(uhd::wb_iface::sptr iface, const size_t base); diff --git a/host/lib/usrp/cores/i2c_core_200.cpp b/host/lib/usrp/cores/i2c_core_200.cpp index 6010ac5a2..2f0f6f815 100644 --- a/host/lib/usrp/cores/i2c_core_200.cpp +++ b/host/lib/usrp/cores/i2c_core_200.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2012 Ettus Research LLC +// Copyright 2011-2012,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -56,6 +56,10 @@ using namespace uhd; +i2c_core_200::~i2c_core_200(void){ + /* NOP */ +} + class i2c_core_200_impl : public i2c_core_200{ public: i2c_core_200_impl(wb_iface::sptr iface, const size_t base, const size_t readback): diff --git a/host/lib/usrp/cores/i2c_core_200.hpp b/host/lib/usrp/cores/i2c_core_200.hpp index 1b20455d3..6bb06efa6 100644 --- a/host/lib/usrp/cores/i2c_core_200.hpp +++ b/host/lib/usrp/cores/i2c_core_200.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2012 Ettus Research LLC +// Copyright 2011-2012,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -28,6 +28,8 @@ class i2c_core_200 : boost::noncopyable, public uhd::i2c_iface{ public: typedef boost::shared_ptr<i2c_core_200> sptr; + virtual ~i2c_core_200(void) = 0; + //! makes a new i2c core from iface and slave base static sptr make(uhd::wb_iface::sptr iface, const size_t base, const size_t readback); }; diff --git a/host/lib/usrp/cores/radio_ctrl_core_3000.cpp b/host/lib/usrp/cores/radio_ctrl_core_3000.cpp index 2005bcf33..55e5cba7a 100644 --- a/host/lib/usrp/cores/radio_ctrl_core_3000.cpp +++ b/host/lib/usrp/cores/radio_ctrl_core_3000.cpp @@ -1,5 +1,5 @@ // -// Copyright 2012-2013 Ettus Research LLC +// Copyright 2012-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -37,6 +37,10 @@ static const double ACK_TIMEOUT = 2.0; //supposed to be worst case practical tim static const double MASSIVE_TIMEOUT = 10.0; //for when we wait on a timed command static const size_t SR_READBACK = 32; +radio_ctrl_core_3000::~radio_ctrl_core_3000(void){ + /* NOP */ +} + class radio_ctrl_core_3000_impl: public radio_ctrl_core_3000 { public: diff --git a/host/lib/usrp/cores/radio_ctrl_core_3000.hpp b/host/lib/usrp/cores/radio_ctrl_core_3000.hpp index 51a307c10..1c25ceb2c 100644 --- a/host/lib/usrp/cores/radio_ctrl_core_3000.hpp +++ b/host/lib/usrp/cores/radio_ctrl_core_3000.hpp @@ -1,5 +1,5 @@ // -// Copyright 2012-2013 Ettus Research LLC +// Copyright 2012-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -34,6 +34,8 @@ class radio_ctrl_core_3000 : public uhd::wb_iface public: typedef boost::shared_ptr<radio_ctrl_core_3000> sptr; + virtual ~radio_ctrl_core_3000(void) = 0; + //! Make a new control object static sptr make( const bool big_endian, diff --git a/host/lib/usrp/cores/rx_dsp_core_200.cpp b/host/lib/usrp/cores/rx_dsp_core_200.cpp index 2e5ca8e7a..2eafd6c59 100644 --- a/host/lib/usrp/cores/rx_dsp_core_200.cpp +++ b/host/lib/usrp/cores/rx_dsp_core_200.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2012 Ettus Research LLC +// Copyright 2011-2012,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -52,6 +52,10 @@ template <class T> T ceil_log2(T num){ using namespace uhd; +rx_dsp_core_200::~rx_dsp_core_200(void){ + /* NOP */ +} + class rx_dsp_core_200_impl : public rx_dsp_core_200{ public: rx_dsp_core_200_impl( diff --git a/host/lib/usrp/cores/rx_dsp_core_200.hpp b/host/lib/usrp/cores/rx_dsp_core_200.hpp index 3937df9e8..1dc51fa24 100644 --- a/host/lib/usrp/cores/rx_dsp_core_200.hpp +++ b/host/lib/usrp/cores/rx_dsp_core_200.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -31,6 +31,8 @@ class rx_dsp_core_200 : boost::noncopyable{ public: typedef boost::shared_ptr<rx_dsp_core_200> sptr; + virtual ~rx_dsp_core_200(void) = 0; + static sptr make( uhd::wb_iface::sptr iface, const size_t dsp_base, const size_t ctrl_base, diff --git a/host/lib/usrp/cores/rx_dsp_core_3000.cpp b/host/lib/usrp/cores/rx_dsp_core_3000.cpp index 07399d462..fc7c58da8 100644 --- a/host/lib/usrp/cores/rx_dsp_core_3000.cpp +++ b/host/lib/usrp/cores/rx_dsp_core_3000.cpp @@ -46,6 +46,10 @@ template <class T> T ceil_log2(T num){ using namespace uhd; +rx_dsp_core_3000::~rx_dsp_core_3000(void){ + /* NOP */ +} + class rx_dsp_core_3000_impl : public rx_dsp_core_3000{ public: rx_dsp_core_3000_impl( diff --git a/host/lib/usrp/cores/rx_dsp_core_3000.hpp b/host/lib/usrp/cores/rx_dsp_core_3000.hpp index 8c6a2178d..89059e953 100644 --- a/host/lib/usrp/cores/rx_dsp_core_3000.hpp +++ b/host/lib/usrp/cores/rx_dsp_core_3000.hpp @@ -31,6 +31,8 @@ class rx_dsp_core_3000 : boost::noncopyable{ public: typedef boost::shared_ptr<rx_dsp_core_3000> sptr; + virtual ~rx_dsp_core_3000(void) = 0; + static sptr make( uhd::wb_iface::sptr iface, const size_t dsp_base, diff --git a/host/lib/usrp/cores/rx_frontend_core_200.cpp b/host/lib/usrp/cores/rx_frontend_core_200.cpp index 864b5cc53..b73896b57 100644 --- a/host/lib/usrp/cores/rx_frontend_core_200.cpp +++ b/host/lib/usrp/cores/rx_frontend_core_200.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2012 Ettus Research LLC +// Copyright 2011-2012,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -34,6 +34,9 @@ static boost::uint32_t fs_to_bits(const double num, const size_t bits){ return boost::int32_t(boost::math::round(num * (1 << (bits-1)))); } +rx_frontend_core_200::~rx_frontend_core_200(void){ + /* NOP */ +} class rx_frontend_core_200_impl : public rx_frontend_core_200{ public: diff --git a/host/lib/usrp/cores/rx_frontend_core_200.hpp b/host/lib/usrp/cores/rx_frontend_core_200.hpp index 8327aef8b..9b18e2089 100644 --- a/host/lib/usrp/cores/rx_frontend_core_200.hpp +++ b/host/lib/usrp/cores/rx_frontend_core_200.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -29,6 +29,8 @@ class rx_frontend_core_200 : boost::noncopyable{ public: typedef boost::shared_ptr<rx_frontend_core_200> sptr; + virtual ~rx_frontend_core_200(void) = 0; + static sptr make(uhd::wb_iface::sptr iface, const size_t base); virtual void set_mux(const bool swap) = 0; diff --git a/host/lib/usrp/cores/rx_vita_core_3000.cpp b/host/lib/usrp/cores/rx_vita_core_3000.cpp index aad137ea3..f61da7cc3 100644 --- a/host/lib/usrp/cores/rx_vita_core_3000.cpp +++ b/host/lib/usrp/cores/rx_vita_core_3000.cpp @@ -1,5 +1,5 @@ // -// Copyright 2013 Ettus Research LLC +// Copyright 2013-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -33,6 +33,10 @@ using namespace uhd; +rx_vita_core_3000::~rx_vita_core_3000(void){ + /* NOP */ +} + struct rx_vita_core_3000_impl : rx_vita_core_3000 { rx_vita_core_3000_impl( diff --git a/host/lib/usrp/cores/rx_vita_core_3000.hpp b/host/lib/usrp/cores/rx_vita_core_3000.hpp index 577510728..cd718a190 100644 --- a/host/lib/usrp/cores/rx_vita_core_3000.hpp +++ b/host/lib/usrp/cores/rx_vita_core_3000.hpp @@ -1,5 +1,5 @@ // -// Copyright 2013 Ettus Research LLC +// Copyright 2013,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -32,6 +32,8 @@ class rx_vita_core_3000 : boost::noncopyable public: typedef boost::shared_ptr<rx_vita_core_3000> sptr; + virtual ~rx_vita_core_3000(void) = 0; + static sptr make( uhd::wb_iface::sptr iface, const size_t base diff --git a/host/lib/usrp/cores/spi_core_100.cpp b/host/lib/usrp/cores/spi_core_100.cpp index d11a499a9..71d92bcb6 100644 --- a/host/lib/usrp/cores/spi_core_100.cpp +++ b/host/lib/usrp/cores/spi_core_100.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -39,6 +39,10 @@ using namespace uhd; +spi_core_100::~spi_core_100(void){ + /* NOP */ +} + class spi_core_100_impl : public spi_core_100{ public: spi_core_100_impl(wb_iface::sptr iface, const size_t base): diff --git a/host/lib/usrp/cores/spi_core_100.hpp b/host/lib/usrp/cores/spi_core_100.hpp index ce53c0b86..63bf94a67 100644 --- a/host/lib/usrp/cores/spi_core_100.hpp +++ b/host/lib/usrp/cores/spi_core_100.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -28,6 +28,8 @@ class spi_core_100 : boost::noncopyable, public uhd::spi_iface{ public: typedef boost::shared_ptr<spi_core_100> sptr; + virtual ~spi_core_100(void) = 0; + //! makes a new spi core from iface and slave base static sptr make(uhd::wb_iface::sptr iface, const size_t base); }; diff --git a/host/lib/usrp/cores/spi_core_3000.cpp b/host/lib/usrp/cores/spi_core_3000.cpp index b7503064a..0656d910a 100644 --- a/host/lib/usrp/cores/spi_core_3000.cpp +++ b/host/lib/usrp/cores/spi_core_3000.cpp @@ -1,5 +1,5 @@ // -// Copyright 2013 Ettus Research LLC +// Copyright 2013-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -26,6 +26,10 @@ using namespace uhd; +spi_core_3000::~spi_core_3000(void){ + /* NOP */ +} + class spi_core_3000_impl : public spi_core_3000 { public: diff --git a/host/lib/usrp/cores/spi_core_3000.hpp b/host/lib/usrp/cores/spi_core_3000.hpp index 923efed3d..6a439772e 100644 --- a/host/lib/usrp/cores/spi_core_3000.hpp +++ b/host/lib/usrp/cores/spi_core_3000.hpp @@ -1,5 +1,5 @@ // -// Copyright 2013 Ettus Research LLC +// Copyright 2013-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -29,6 +29,8 @@ class spi_core_3000 : boost::noncopyable, public uhd::spi_iface public: typedef boost::shared_ptr<spi_core_3000> sptr; + virtual ~spi_core_3000(void) = 0; + //! makes a new spi core from iface and slave base static sptr make(uhd::wb_iface::sptr iface, const size_t base, const size_t readback); diff --git a/host/lib/usrp/cores/time64_core_200.cpp b/host/lib/usrp/cores/time64_core_200.cpp index ad5e6477c..54b60b6ad 100644 --- a/host/lib/usrp/cores/time64_core_200.cpp +++ b/host/lib/usrp/cores/time64_core_200.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -39,6 +39,10 @@ using namespace uhd; +time64_core_200::~time64_core_200(void){ + /* NOP */ +} + class time64_core_200_impl : public time64_core_200{ public: time64_core_200_impl( diff --git a/host/lib/usrp/cores/time64_core_200.hpp b/host/lib/usrp/cores/time64_core_200.hpp index e211ce040..7e30f0abc 100644 --- a/host/lib/usrp/cores/time64_core_200.hpp +++ b/host/lib/usrp/cores/time64_core_200.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2012 Ettus Research LLC +// Copyright 2011-2012,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -35,6 +35,8 @@ public: size_t rb_hi_pps, rb_lo_pps; }; + virtual ~time64_core_200(void) = 0; + //! makes a new time64 core from iface and slave base static sptr make( uhd::wb_iface::sptr iface, const size_t base, diff --git a/host/lib/usrp/cores/time_core_3000.cpp b/host/lib/usrp/cores/time_core_3000.cpp index 45ff55271..aa5d5593d 100644 --- a/host/lib/usrp/cores/time_core_3000.cpp +++ b/host/lib/usrp/cores/time_core_3000.cpp @@ -1,5 +1,5 @@ // -// Copyright 2013 Ettus Research LLC +// Copyright 2013-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -29,6 +29,10 @@ using namespace uhd; +time_core_3000::~time_core_3000(void){ + /* NOP */ +} + struct time_core_3000_impl : time_core_3000 { time_core_3000_impl( diff --git a/host/lib/usrp/cores/time_core_3000.hpp b/host/lib/usrp/cores/time_core_3000.hpp index fad408810..7463386ba 100644 --- a/host/lib/usrp/cores/time_core_3000.hpp +++ b/host/lib/usrp/cores/time_core_3000.hpp @@ -1,5 +1,5 @@ // -// Copyright 2013 Ettus Research LLC +// Copyright 2013-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -35,6 +35,8 @@ public: size_t rb_pps; }; + virtual ~time_core_3000(void) = 0; + //! makes a new time core from iface and slave base static sptr make( uhd::wb_iface::sptr iface, const size_t base, diff --git a/host/lib/usrp/cores/tx_dsp_core_200.cpp b/host/lib/usrp/cores/tx_dsp_core_200.cpp index f8aa87aa3..0e83a698b 100644 --- a/host/lib/usrp/cores/tx_dsp_core_200.cpp +++ b/host/lib/usrp/cores/tx_dsp_core_200.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2012 Ettus Research LLC +// Copyright 2011-2012,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -51,6 +51,10 @@ template <class T> T ceil_log2(T num){ using namespace uhd; +tx_dsp_core_200::~tx_dsp_core_200(void){ + /* NOP */ +} + class tx_dsp_core_200_impl : public tx_dsp_core_200{ public: tx_dsp_core_200_impl( diff --git a/host/lib/usrp/cores/tx_dsp_core_200.hpp b/host/lib/usrp/cores/tx_dsp_core_200.hpp index ce3d1dbdd..f0475c579 100644 --- a/host/lib/usrp/cores/tx_dsp_core_200.hpp +++ b/host/lib/usrp/cores/tx_dsp_core_200.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -29,6 +29,8 @@ class tx_dsp_core_200 : boost::noncopyable{ public: typedef boost::shared_ptr<tx_dsp_core_200> sptr; + virtual ~tx_dsp_core_200(void) = 0; + static sptr make( uhd::wb_iface::sptr iface, const size_t dsp_base, const size_t ctrl_base, diff --git a/host/lib/usrp/cores/tx_dsp_core_3000.cpp b/host/lib/usrp/cores/tx_dsp_core_3000.cpp index 93c8702bc..9c2b98ffb 100644 --- a/host/lib/usrp/cores/tx_dsp_core_3000.cpp +++ b/host/lib/usrp/cores/tx_dsp_core_3000.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2013 Ettus Research LLC +// Copyright 2011-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -37,6 +37,10 @@ template <class T> T ceil_log2(T num){ using namespace uhd; +tx_dsp_core_3000::~tx_dsp_core_3000(void){ + /* NOP */ +} + class tx_dsp_core_3000_impl : public tx_dsp_core_3000{ public: tx_dsp_core_3000_impl( diff --git a/host/lib/usrp/cores/tx_dsp_core_3000.hpp b/host/lib/usrp/cores/tx_dsp_core_3000.hpp index 6f725b836..a51cb2803 100644 --- a/host/lib/usrp/cores/tx_dsp_core_3000.hpp +++ b/host/lib/usrp/cores/tx_dsp_core_3000.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011-2013 Ettus Research LLC +// Copyright 2011-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -29,6 +29,8 @@ class tx_dsp_core_3000 : boost::noncopyable{ public: typedef boost::shared_ptr<tx_dsp_core_3000> sptr; + virtual ~tx_dsp_core_3000(void) = 0; + static sptr make( uhd::wb_iface::sptr iface, const size_t dsp_base diff --git a/host/lib/usrp/cores/tx_frontend_core_200.cpp b/host/lib/usrp/cores/tx_frontend_core_200.cpp index d701027e5..7000f46bd 100644 --- a/host/lib/usrp/cores/tx_frontend_core_200.cpp +++ b/host/lib/usrp/cores/tx_frontend_core_200.cpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -33,6 +33,9 @@ static boost::uint32_t fs_to_bits(const double num, const size_t bits){ return boost::int32_t(boost::math::round(num * (1 << (bits-1)))); } +tx_frontend_core_200::~tx_frontend_core_200(void){ + /* NOP */ +} class tx_frontend_core_200_impl : public tx_frontend_core_200{ public: diff --git a/host/lib/usrp/cores/tx_frontend_core_200.hpp b/host/lib/usrp/cores/tx_frontend_core_200.hpp index 7d09b39d2..0b89ea818 100644 --- a/host/lib/usrp/cores/tx_frontend_core_200.hpp +++ b/host/lib/usrp/cores/tx_frontend_core_200.hpp @@ -1,5 +1,5 @@ // -// Copyright 2011 Ettus Research LLC +// Copyright 2011,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -29,6 +29,8 @@ class tx_frontend_core_200 : boost::noncopyable{ public: typedef boost::shared_ptr<tx_frontend_core_200> sptr; + virtual ~tx_frontend_core_200(void) = 0; + static sptr make(uhd::wb_iface::sptr iface, const size_t base); virtual void set_mux(const std::string &mode) = 0; diff --git a/host/lib/usrp/cores/tx_vita_core_3000.cpp b/host/lib/usrp/cores/tx_vita_core_3000.cpp index 38eb6afb5..71a2b7e21 100644 --- a/host/lib/usrp/cores/tx_vita_core_3000.cpp +++ b/host/lib/usrp/cores/tx_vita_core_3000.cpp @@ -1,5 +1,5 @@ // -// Copyright 2013 Ettus Research LLC +// Copyright 2013,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -24,6 +24,10 @@ using namespace uhd; +tx_vita_core_3000::~tx_vita_core_3000(void){ + /* NOP */ +} + struct tx_vita_core_3000_impl : tx_vita_core_3000 { tx_vita_core_3000_impl( diff --git a/host/lib/usrp/cores/tx_vita_core_3000.hpp b/host/lib/usrp/cores/tx_vita_core_3000.hpp index d4677a3e3..4c0052d4f 100644 --- a/host/lib/usrp/cores/tx_vita_core_3000.hpp +++ b/host/lib/usrp/cores/tx_vita_core_3000.hpp @@ -1,5 +1,5 @@ // -// Copyright 2013 Ettus Research LLC +// Copyright 2013-2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -32,6 +32,8 @@ class tx_vita_core_3000 : boost::noncopyable public: typedef boost::shared_ptr<tx_vita_core_3000> sptr; + virtual ~tx_vita_core_3000(void) = 0; + static sptr make( uhd::wb_iface::sptr iface, const size_t base diff --git a/host/lib/usrp/cores/user_settings_core_200.cpp b/host/lib/usrp/cores/user_settings_core_200.cpp index 391725edc..99f7e00e1 100644 --- a/host/lib/usrp/cores/user_settings_core_200.cpp +++ b/host/lib/usrp/cores/user_settings_core_200.cpp @@ -1,5 +1,5 @@ // -// Copyright 2012 Ettus Research LLC +// Copyright 2012,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -22,6 +22,10 @@ using namespace uhd; #define REG_USER_ADDR _base + 0 #define REG_USER_DATA _base + 4 +user_settings_core_200::~user_settings_core_200(void){ + /* NOP */ +} + class user_settings_core_200_impl : public user_settings_core_200{ public: user_settings_core_200_impl(wb_iface::sptr iface, const size_t base): diff --git a/host/lib/usrp/cores/user_settings_core_200.hpp b/host/lib/usrp/cores/user_settings_core_200.hpp index f5fca2ce6..a8efeed38 100644 --- a/host/lib/usrp/cores/user_settings_core_200.hpp +++ b/host/lib/usrp/cores/user_settings_core_200.hpp @@ -1,5 +1,5 @@ // -// Copyright 2012 Ettus Research LLC +// Copyright 2012,2014 Ettus Research LLC // // This program is free software: you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -28,6 +28,8 @@ public: typedef boost::shared_ptr<user_settings_core_200> sptr; typedef std::pair<boost::uint8_t, boost::uint32_t> user_reg_t; + virtual ~user_settings_core_200(void) = 0; + static sptr make(uhd::wb_iface::sptr iface, const size_t base); virtual void set_reg(const user_reg_t ®) = 0; |