| USRP Hardware Driver and Device Manual Version: 4.10.0.0 UHD and USRP Manual |

Loading...
Searching...
No Matches
dboard_base.hpp
Go to the documentation of this file.
1//
2// Copyright 2010,2017 Ettus Research, A National Instruments Company
3//
4// SPDX-License-Identifier: GPL-3.0-or-later
5//
6
7#pragma once
8
9#include <uhd/config.hpp>
10#include <uhd/property_tree.hpp>
11#include <uhd/usrp/dboard_eeprom.hpp>
12#include <uhd/usrp/dboard_id.hpp>
13#include <uhd/usrp/dboard_iface.hpp>
14#include <uhd/utils/noncopyable.hpp>
15#include <memory>
16
17 namespace uhd { namespace usrp {
18
23 class UHD_API dboard_base : uhd::noncopyable
24{
25 public:
26 typedef std::shared_ptr<dboard_base> sptr;
32 typedef void* ctor_args_t;
33
34 // structors
35 dboard_base(ctor_args_t);
36 virtual ~dboard_base();
37
38 // post-construction initializer
39 virtual void initialize() {}
40
41 protected:
42 std::string get_subdev_name(void);
43 dboard_iface::sptr get_iface(void);
44 dboard_id_t get_rx_id(void);
45 dboard_id_t get_tx_id(void);
46 dboard_eeprom_t get_rx_eeprom(void);
47 dboard_eeprom_t get_tx_eeprom(void);
48 property_tree::sptr get_rx_subtree(void);
49 property_tree::sptr get_tx_subtree(void);
50
51 private:
52 struct impl;
53 std::unique_ptr<impl> _impl;
54};
55
60 class UHD_API xcvr_dboard_base : public dboard_base
61{
62 public:
66 xcvr_dboard_base(ctor_args_t);
67 ~xcvr_dboard_base() override {}
68};
69
74 class UHD_API rx_dboard_base : public dboard_base
75{
76 public:
80 rx_dboard_base(ctor_args_t);
81 ~rx_dboard_base() override {}
82};
83
88 class UHD_API tx_dboard_base : public dboard_base
89{
90 public:
94 tx_dboard_base(ctor_args_t);
95 ~tx_dboard_base() override {}
96};
97
98}} // 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:57
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 cal_utils.hpp:11
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