USRP Hardware Driver and USRP Manual  Version: 003.010.000.HEAD-0-g6e1ac3fc
UHD and USRP Manual
tick_node_ctrl.hpp
Go to the documentation of this file.
1 //
2 // Copyright 2014 Ettus Research LLC
3 //
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU General Public License as published by
6 // the Free Software Foundation, either version 3 of the License, or
7 // (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU General Public License for more details.
13 //
14 // You should have received a copy of the GNU General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
16 //
17 
18 #ifndef INCLUDED_LIBUHD_TICK_NODE_CTRL_BASE_HPP
19 #define INCLUDED_LIBUHD_TICK_NODE_CTRL_BASE_HPP
20 
22 #include <uhd/rfnoc/constants.hpp>
23 
24 namespace uhd {
25  namespace rfnoc {
26 
35 class tick_node_ctrl : virtual public node_ctrl_base
36 {
37 public:
38  /***********************************************************************
39  * Types
40  **********************************************************************/
41  typedef boost::shared_ptr<tick_node_ctrl> sptr;
42 
43  /***********************************************************************
44  * Constants
45  **********************************************************************/
47  static const double RATE_UNDEFINED;
48 
49  /***********************************************************************
50  * Rate controls
51  **********************************************************************/
58  double get_tick_rate(
59  const std::set< node_ctrl_base::sptr > &_explored_nodes=std::set< node_ctrl_base::sptr >()
60  );
61 
62 protected:
63  virtual double _get_tick_rate() { return RATE_UNDEFINED; };
64 
65 }; /* class tick_node_ctrl */
66 
67 }} /* namespace uhd::rfnoc */
68 
69 #endif /* INCLUDED_LIBUHD_TICK_NODE_CTRL_BASE_HPP */
70 // vim: sw=4 et:
Definition: build_info.hpp:25
Definition: tick_node_ctrl.hpp:35
#define UHD_RFNOC_API
Definition: config.hpp:103
double get_tick_rate(const std::set< node_ctrl_base::sptr > &_explored_nodes=std::set< node_ctrl_base::sptr >())
virtual double _get_tick_rate()
Definition: tick_node_ctrl.hpp:63
static const double RATE_UNDEFINED
This value is used by rate nodes that don&#39;t actually set a rate themselves.
Definition: tick_node_ctrl.hpp:47
boost::shared_ptr< tick_node_ctrl > sptr
Definition: tick_node_ctrl.hpp:41
Definition: node_ctrl_base.hpp:41