USRP Hardware Driver and USRP Manual  Version: 20250718.0.git40403b7c.el9
UHD and USRP Manual
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>
12 #include <uhd/usrp/dboard_id.hpp>
15 #include <memory>
16 
17 namespace uhd { namespace usrp {
18 
24 {
25 public:
26  typedef std::shared_ptr<dboard_base> sptr;
32  typedef void* ctor_args_t;
33 
34  // structors
36  virtual ~dboard_base();
37 
38  // post-construction initializer
39  virtual void initialize() {}
40 
41 protected:
42  std::string get_subdev_name(void);
50 
51 private:
52  struct impl;
53  std::unique_ptr<impl> _impl;
54 };
55 
61 {
62 public:
67  ~xcvr_dboard_base() override {}
68 };
69 
75 {
76 public:
81  ~rx_dboard_base() override {}
82 };
83 
89 {
90 public:
95  ~tx_dboard_base() override {}
96 };
97 
98 }} // namespace uhd::usrp
std::shared_ptr< property_tree > sptr
Definition: property_tree.hpp:224
Definition: dboard_base.hpp:24
void * ctor_args_t
Definition: dboard_base.hpp:32
property_tree::sptr get_tx_subtree(void)
property_tree::sptr get_rx_subtree(void)
std::shared_ptr< dboard_base > sptr
Definition: dboard_base.hpp:26
dboard_id_t get_rx_id(void)
virtual void initialize()
Definition: dboard_base.hpp:39
dboard_base(ctor_args_t)
dboard_id_t get_tx_id(void)
dboard_iface::sptr get_iface(void)
std::string get_subdev_name(void)
dboard_eeprom_t get_tx_eeprom(void)
dboard_eeprom_t get_rx_eeprom(void)
Definition: dboard_id.hpp:18
std::shared_ptr< dboard_iface > sptr
Definition: dboard_iface.hpp:56
Definition: dboard_base.hpp:75
~rx_dboard_base() override
Definition: dboard_base.hpp:81
Definition: dboard_base.hpp:89
~tx_dboard_base() override
Definition: dboard_base.hpp:95
Definition: dboard_base.hpp:61
~xcvr_dboard_base() override
Definition: dboard_base.hpp:67
#define UHD_API
Definition: config.h:87
Definition: build_info.hpp:12
boost::noncopyable noncopyable
Definition: noncopyable.hpp:45
Definition: dboard_eeprom.hpp:18