Loading...
Searching...
No Matches
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 >:
[legend]
Collaboration diagram for uhd::experts::data_node_t< data_t >:
[legend]

## 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 | ( |  | ) |

inline override virtual

Implements uhd::experts::dag_vertex_t.

## 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

inline override virtual

Implements uhd::experts::dag_vertex_t.

## is_dirty()

template<typename data_t>

bool uhd::experts::data_node_t< data_t >::is_dirty | ( |  | ) | const

inline override virtual

Implements uhd::experts::dag_vertex_t.

## mark_clean()

template<typename data_t>

void uhd::experts::data_node_t< data_t >::mark_clean | ( |  | ) |

inline override virtual

Implements uhd::experts::dag_vertex_t.

## resolve()

template<typename data_t>

void uhd::experts::data_node_t< data_t >::resolve | ( |  | ) |

inline override virtual

Implements uhd::experts::dag_vertex_t.

## 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 | ( |  | ) | const

inline override virtual

Implements uhd::experts::dag_vertex_t.

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

- expert_nodes.hpp