diff options
author | Martin Braun <martin.braun@ettus.com> | 2017-05-30 14:33:15 -0700 |
---|---|---|
committer | Martin Braun <martin.braun@ettus.com> | 2017-12-22 15:03:58 -0800 |
commit | 2b864696b729783a0248c800e0a5b18bd881509c (patch) | |
tree | 856d233b8f2a41d38e4605ffaaf58a60d831631d /host/lib/usrp/mpmd/mpmd_impl.hpp | |
parent | 823251a1969e1a3a9434e27acbbb9e3b8ea4715e (diff) | |
download | uhd-2b864696b729783a0248c800e0a5b18bd881509c.tar.gz uhd-2b864696b729783a0248c800e0a5b18bd881509c.tar.bz2 uhd-2b864696b729783a0248c800e0a5b18bd881509c.zip |
mpmd: Added preliminary support for passing RPC client to blocks
Diffstat (limited to 'host/lib/usrp/mpmd/mpmd_impl.hpp')
-rw-r--r-- | host/lib/usrp/mpmd/mpmd_impl.hpp | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/host/lib/usrp/mpmd/mpmd_impl.hpp b/host/lib/usrp/mpmd/mpmd_impl.hpp index 3b6a4b213..9a8b25ba0 100644 --- a/host/lib/usrp/mpmd/mpmd_impl.hpp +++ b/host/lib/usrp/mpmd/mpmd_impl.hpp @@ -40,6 +40,9 @@ struct frame_size_t size_t send_frame_size; }; + +/*! Stores all attributes specific to a single MPM device + */ class mpmd_mboard_impl { public: @@ -56,7 +59,13 @@ class mpmd_mboard_impl std::map<std::string, std::string> data_interfaces; std::string loaded_fpga_image; std::string xport_path; - uhd::rpc_client rpc; + + /*! Reference the RPC client for this motherboard + * + * We store a shared ptr, because we might share it with some of the RFNoC + * blocks. + */ + uhd::rpc_client::sptr rpc; uhd::sid_t allocate_sid(const uint16_t port, const uhd::sid_t address, const uint32_t xbar_src_addr, @@ -69,6 +78,13 @@ class mpmd_mboard_impl uhd::task::sptr _claimer_task; }; + +/*! Parent class of an MPM device + * + * An MPM device is a USRP running MPM. Because most of the hardware controls + * are taken care of by MPM itself, it is not necessary to write a specific + * derived class for every single type of MPM device. + */ class mpmd_impl : public uhd::usrp::device3_impl { public: |