16 namespace uhd {
namespace experts {
28 typedef std::shared_ptr<expert_container>
sptr;
35 virtual const std::string&
get_name()
const = 0;
87 virtual void resolve_to(
const std::string& node_name) = 0;
124 const dag_vertex_t& lookup(
const std::string& name)
const override = 0;
125 dag_vertex_t& retrieve(
const std::string& name)
const override = 0;
146 static sptr make(
const std::string& name);
156 virtual std::recursive_mutex& resolve_mutex() = 0;
168 virtual void add_data_node(
190 virtual void clear() = 0;
Definition: expert_nodes.hpp:39
Definition: expert_container.hpp:26
virtual void debug_audit() const =0
virtual void resolve_from(const std::string &node_name)=0
virtual void resolve_all(bool force=false)=0
virtual const node_retriever_t & node_retriever() const =0
virtual std::string to_dot() const =0
virtual const std::string & get_name() const =0
virtual void resolve_to(const std::string &node_name)=0
std::shared_ptr< expert_container > sptr
Definition: expert_container.hpp:28
~expert_container() override
Definition: expert_container.hpp:30
Definition: expert_factory.hpp:32
Definition: expert_nodes.hpp:278
Definition: expert_nodes.hpp:474
#define UHD_API
Definition: config.h:87
auto_resolve_mode_t
Definition: expert_container.hpp:18
@ AUTO_RESOLVE_ON_WRITE
Definition: expert_container.hpp:21
@ AUTO_RESOLVE_ON_READ
Definition: expert_container.hpp:20
@ AUTO_RESOLVE_OFF
Definition: expert_container.hpp:19
@ AUTO_RESOLVE_ON_READ_WRITE
Definition: expert_container.hpp:22
Definition: build_info.hpp:12
boost::noncopyable noncopyable
Definition: noncopyable.hpp:45