USRP Hardware Driver and USRP Manual  Version: 4.7.0.0
UHD and USRP Manual
uhd::experts::data_node_t< data_t > Class Template Reference

#include <uhd/experts/expert_nodes.hpp>

Inheritance diagram for uhd::experts::data_node_t< data_t >:
uhd::experts::dag_vertex_t

Public Member Functions

 data_node_t (const std::string &name, std::recursive_mutex *mutex=NULL)
 
 data_node_t (const std::string &name, const data_t &value, std::recursive_mutex *mutex=NULL)
 
const std::string & get_dtype () const override
 
std::string to_string () const override
 
node_author_t get_author () const
 
bool is_dirty () const override
 
void mark_clean () override
 
void force_dirty () override
 
void resolve () override
 
void set (const data_t &value)
 
const data_t & get () const
 
void commit (const data_t &value)
 
data_t retrieve () const
 
- Public Member Functions inherited from uhd::experts::dag_vertex_t
virtual ~dag_vertex_t ()
 
node_class_t get_class () const
 
const std::string & get_name () const
 

Additional Inherited Members

- Public Types inherited from uhd::experts::dag_vertex_t
typedef std::function< void(std::string)> callback_func_t
 
- Protected Member Functions inherited from uhd::experts::dag_vertex_t
 dag_vertex_t (const node_class_t c, const std::string &n)
 

Detailed Description

template<typename data_t>
class uhd::experts::data_node_t< data_t >


class data_node_t

The data node class hold a passive piece of data in the expert graph. A data node is clean if its underlying data is clean. Access to the underlying data is provided using two methods:

  1. Special accessor classes (for R/W enforcement)
  2. External clients (via commit and retrieve). This access is protected by the callback mutex.

Requirements for data_t

  • Must have a default constructor
  • Must have a copy constructor
  • Must have an assignment operator (=)

    - Must have an equality operator (==)

Constructor & Destructor Documentation

◆ data_node_t() [1/2]

template<typename data_t>
uhd::experts::data_node_t< data_t >::data_node_t ( const std::string &  name,
std::recursive_mutex *  mutex = NULL 
)
inline

◆ data_node_t() [2/2]

template<typename data_t>
uhd::experts::data_node_t< data_t >::data_node_t ( const std::string &  name,
const data_t &  value,
std::recursive_mutex *  mutex = NULL 
)
inline

Member Function Documentation

◆ commit()

template<typename data_t>
void uhd::experts::data_node_t< data_t >::commit ( const data_t &  value)
inline

◆ force_dirty()

template<typename data_t>
void uhd::experts::data_node_t< data_t >::force_dirty ( )
inlineoverridevirtual

◆ get()

template<typename data_t>
const data_t& uhd::experts::data_node_t< data_t >::get ( ) const
inline

◆ get_author()

template<typename data_t>
node_author_t uhd::experts::data_node_t< data_t >::get_author ( ) const
inline

◆ get_dtype()

template<typename data_t>
const std::string& uhd::experts::data_node_t< data_t >::get_dtype ( ) const
inlineoverridevirtual

◆ is_dirty()

template<typename data_t>
bool uhd::experts::data_node_t< data_t >::is_dirty ( ) const
inlineoverridevirtual

◆ mark_clean()

template<typename data_t>
void uhd::experts::data_node_t< data_t >::mark_clean ( )
inlineoverridevirtual

◆ resolve()

template<typename data_t>
void uhd::experts::data_node_t< data_t >::resolve ( )
inlineoverridevirtual

◆ retrieve()

template<typename data_t>
data_t uhd::experts::data_node_t< data_t >::retrieve ( ) const
inline

◆ set()

template<typename data_t>
void uhd::experts::data_node_t< data_t >::set ( const data_t &  value)
inline

◆ to_string()

template<typename data_t>
std::string uhd::experts::data_node_t< data_t >::to_string ( void  ) const
inlineoverridevirtual

The documentation for this class was generated from the following file: