Loading...
Searching...
No Matches
dboard_base.hpp
Go to the documentation of this file.
//
// Copyright 2010,2017 Ettus Research, A National Instruments Company
//
// SPDX-License-Identifier: GPL-3.0-or-later
//
#pragma once
#include <uhd/config.hpp>
#include <uhd/property_tree.hpp>
#include <uhd/usrp/dboard_eeprom.hpp>
#include <uhd/usrp/dboard_id.hpp>
#include <uhd/usrp/dboard_iface.hpp>
#include <uhd/utils/noncopyable.hpp>
#include <memory>
namespace uhd { namespace usrp {
class UHD_API dboard_base : uhd::noncopyable
{
public:
typedef std::shared_ptr<dboard_base> sptr;
typedef void* ctor_args_t;
// structors
dboard_base(ctor_args_t);
virtual ~dboard_base();
// post-construction initializer
virtual void initialize() {}
protected:
std::string get_subdev_name(void);
dboard_iface::sptr get_iface(void);
dboard_id_t get_rx_id(void);
dboard_id_t get_tx_id(void);
dboard_eeprom_t get_rx_eeprom(void);
dboard_eeprom_t get_tx_eeprom(void);
property_tree::sptr get_rx_subtree(void);
property_tree::sptr get_tx_subtree(void);
private:
struct impl;
std::unique_ptr<impl> _impl;
};
class UHD_API xcvr_dboard_base : public dboard_base
{
public:
xcvr_dboard_base(ctor_args_t);
~xcvr_dboard_base() override {}
};
class UHD_API rx_dboard_base : public dboard_base
{
public:
rx_dboard_base(ctor_args_t);
~rx_dboard_base() override {}
};
class UHD_API tx_dboard_base : public dboard_base
{
public:
tx_dboard_base(ctor_args_t);
~tx_dboard_base() override {}
};
}} // namespace uhd::usrp
uhd::property_tree::sptr
std::shared_ptr< property_tree > sptr
Definition property_tree.hpp:224
uhd::usrp::dboard_base::ctor_args_t
void * ctor_args_t
Definition dboard_base.hpp:32
uhd::usrp::dboard_base::get_tx_subtree
property_tree::sptr get_tx_subtree(void)
uhd::usrp::dboard_base::get_rx_subtree
property_tree::sptr get_rx_subtree(void)
uhd::usrp::dboard_base::sptr
std::shared_ptr< dboard_base > sptr
Definition dboard_base.hpp:26
uhd::usrp::dboard_base::get_rx_id
dboard_id_t get_rx_id(void)
uhd::usrp::dboard_base::initialize
virtual void initialize()
Definition dboard_base.hpp:39
uhd::usrp::dboard_base::~dboard_base
virtual ~dboard_base()
uhd::usrp::dboard_base::dboard_base
dboard_base(ctor_args_t)
uhd::usrp::dboard_base::get_tx_id
dboard_id_t get_tx_id(void)
uhd::usrp::dboard_base::get_iface
dboard_iface::sptr get_iface(void)
uhd::usrp::dboard_base::get_subdev_name
std::string get_subdev_name(void)
uhd::usrp::dboard_base::get_tx_eeprom
dboard_eeprom_t get_tx_eeprom(void)
uhd::usrp::dboard_base::get_rx_eeprom
dboard_eeprom_t get_rx_eeprom(void)
uhd::usrp::dboard_id_t
Definition dboard_id.hpp:18
uhd::usrp::dboard_iface::sptr
std::shared_ptr< dboard_iface > sptr
Definition dboard_iface.hpp:56
uhd::usrp::rx_dboard_base::~rx_dboard_base
~rx_dboard_base() override
Definition dboard_base.hpp:81
uhd::usrp::rx_dboard_base::rx_dboard_base
rx_dboard_base(ctor_args_t)
uhd::usrp::tx_dboard_base::tx_dboard_base
tx_dboard_base(ctor_args_t)
uhd::usrp::tx_dboard_base::~tx_dboard_base
~tx_dboard_base() override
Definition dboard_base.hpp:95
uhd::usrp::xcvr_dboard_base::~xcvr_dboard_base
~xcvr_dboard_base() override
Definition dboard_base.hpp:67
uhd::usrp::xcvr_dboard_base::xcvr_dboard_base
xcvr_dboard_base(ctor_args_t)
UHD_API
#define UHD_API
Definition config.h:87
config.hpp
dboard_eeprom.hpp
dboard_id.hpp
dboard_iface.hpp
uhd::usrp
Definition container.hpp:15
uhd
Definition build_info.hpp:12
uhd::noncopyable
boost::noncopyable noncopyable
Definition noncopyable.hpp:45
noncopyable.hpp
property_tree.hpp
uhd::usrp::dboard_eeprom_t
Definition dboard_eeprom.hpp:18