#include <uhd/experts/expert_container.hpp>
◆ sptr
◆ ~expert_container()
uhd::experts::expert_container::~expert_container |
( |
| ) |
|
|
inlineoverride |
◆ debug_audit()
virtual void uhd::experts::expert_container::debug_audit |
( |
| ) |
const |
|
pure virtual |
Runs several sanity checks on the underlying graph to flag dependency issues. Outputs of the checks are logged to the console so UHD_EXPERTS_VERBOSE_LOGGING must be enabled to see the results
◆ get_name()
virtual const std::string& uhd::experts::expert_container::get_name |
( |
| ) |
const |
|
pure virtual |
Return the name of this container
◆ node_retriever()
virtual const node_retriever_t& uhd::experts::expert_container::node_retriever |
( |
| ) |
const |
|
pure virtual |
Return a node retriever object for this container
◆ resolve_all()
virtual void uhd::experts::expert_container::resolve_all |
( |
bool |
force = false | ) |
|
|
pure virtual |
Resolves all the nodes in this expert graph.
Dependency analysis is performed on the graph and nodes are resolved in a topologically sorted order to ensure that no nodes receive stale data. Nodes and their dependencies are resolved only if they are dirty i.e. their contained values have changed since the last resolve. This call requires an acyclic expert graph.
- Parameters
-
force | If true then ignore dirty state and resolve all nodes |
- Exceptions
-
◆ resolve_from()
virtual void uhd::experts::expert_container::resolve_from |
( |
const std::string & |
node_name | ) |
|
|
pure virtual |
Resolves all the nodes that depend on the specified node.
Dependency analysis is performed on the graph and nodes are resolved in a topologically sorted order to ensure that no nodes receive stale data. Nodes and their dependencies are resolved only if they are dirty i.e. their contained values have changed since the last resolve. This call requires an acyclic expert graph.
- Parameters
-
node_name | Name of the node to start resolving from |
- Exceptions
-
◆ resolve_to()
virtual void uhd::experts::expert_container::resolve_to |
( |
const std::string & |
node_name | ) |
|
|
pure virtual |
Resolves all the specified node and all of its dependencies.
Dependency analysis is performed on the graph and nodes are resolved in a topologically sorted order to ensure that no nodes receive stale data. Nodes and their dependencies are resolved only if they are dirty i.e. their contained values have changed since the last resolve. This call requires an acyclic expert graph.
- Parameters
-
node_name | Name of the node to resolve |
- Exceptions
-
◆ to_dot()
virtual std::string uhd::experts::expert_container::to_dot |
( |
| ) |
const |
|
pure virtual |
Returns a DOT (graph description language) representation of the expert graph. The output has labels for the node name, node type (data or worker) and the underlying data type for each node.
◆ expert_factory
expert_factory is a friend of expert_container and handles all operations that change the structure of the underlying dependency graph. The expert_container instance owns all data and worker nodes and is responsible for release storage on destruction. However, the expert_factory allocates storage for the node and passes them into the expert_container using the following "protected" API calls.
The documentation for this class was generated from the following file: