18 namespace uhd {
namespace experts {
56 template <
typename data_t>
58 const std::string& name,
59 const data_t& init_val,
91 template <
typename data_t>
95 const std::string& name,
96 const data_t& init_val,
107 container->add_data_node(node_ptr, mode);
123 template <
typename data_t>
127 const data_t& init_val,
130 return add_prop_node(container, subtree, path, path, init_val, mode);
151 template <
typename data_t>
155 const std::string& desired_name,
156 const std::string& coerced_name,
157 const data_t& init_val,
160 bool auto_resolve_desired =
162 bool auto_resolve_coerced =
177 container->add_data_node(desired_node_ptr,
179 container->add_data_node(coerced_node_ptr,
197 template <
typename data_t>
201 const data_t& init_val,
204 return add_dual_prop_node(container,
222 template <
typename worker_t>
225 container->add_worker(
new worker_t());
242 template <
typename worker_t,
typename arg1_t>
246 container->add_worker(
new worker_t(arg1));
249 template <
typename worker_t,
typename arg1_t,
typename arg2_t>
253 container->add_worker(
new worker_t(arg1, arg2));
256 template <
typename worker_t,
typename arg1_t,
typename arg2_t,
typename arg3_t>
262 container->add_worker(
new worker_t(arg1, arg2, arg3));
265 template <
typename worker_t,
276 container->add_worker(
new worker_t(arg1, arg2, arg3, arg4));
279 template <
typename worker_t,
292 container->add_worker(
new worker_t(arg1, arg2, arg3, arg4, arg5));
295 template <
typename worker_t,
310 container->add_worker(
new worker_t(arg1, arg2, arg3, arg4, arg5, arg6));
313 template <
typename worker_t,
330 container->add_worker(
new worker_t(arg1, arg2, arg3, arg4, arg5, arg6, arg7));
333 template <
typename worker_t,
352 container->add_worker(
353 new worker_t(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8));
static property< data_t > & add_prop_node(expert_container::sptr container, property_tree::sptr subtree, const fs_path &path, const std::string &name, const data_t &init_val, const auto_resolve_mode_t mode=AUTO_RESOLVE_OFF)
Definition: expert_factory.hpp:92
std::shared_ptr< expert_container > sptr
Definition: expert_container.hpp:28
Definition: property_tree.hpp:205
boost::noncopyable noncopyable
Definition: noncopyable.hpp:45
static void add_worker_node(expert_container::sptr container, arg1_t const &arg1, arg2_t const &arg2, arg3_t const &arg3)
Definition: expert_factory.hpp:257
auto_resolve_mode_t
Definition: expert_container.hpp:18
Definition: property_tree.hpp:225
static property< data_t > & add_dual_prop_node(expert_container::sptr container, property_tree::sptr subtree, const fs_path &path, const data_t &init_val, const auto_resolve_mode_t mode=AUTO_RESOLVE_OFF)
Definition: expert_factory.hpp:198
static void add_worker_node(expert_container::sptr container)
Definition: expert_factory.hpp:223
Definition: expert_container.hpp:21
static void add_worker_node(expert_container::sptr container, arg1_t const &arg1, arg2_t const &arg2, arg3_t const &arg3, arg4_t const &arg4)
Definition: expert_factory.hpp:270
Definition: expert_factory.hpp:31
Definition: property_tree.hpp:225
Definition: expert_container.hpp:19
virtual property< T > & add_coerced_subscriber(const subscriber_type &subscriber)=0
Definition: build_info.hpp:12
static void add_worker_node(expert_container::sptr container, arg1_t const &arg1, arg2_t const &arg2, arg3_t const &arg3, arg4_t const &arg4, arg5_t const &arg5)
Definition: expert_factory.hpp:285
virtual property< T > & set_publisher(const publisher_type &publisher)=0
static void add_worker_node(expert_container::sptr container, arg1_t const &arg1, arg2_t const &arg2)
Definition: expert_factory.hpp:250
static void add_worker_node(expert_container::sptr container, arg1_t const &arg1, arg2_t const &arg2, arg3_t const &arg3, arg4_t const &arg4, arg5_t const &arg5, arg6_t const &arg6, arg7_t const &arg7)
Definition: expert_factory.hpp:321
virtual property< T > & set(const T &value)=0
static void add_data_node(expert_container::sptr container, const std::string &name, const data_t &init_val, const auto_resolve_mode_t mode=AUTO_RESOLVE_OFF)
Definition: expert_factory.hpp:57
Definition: expert_nodes.hpp:128
virtual property< T > & set_coerced(const T &value)=0
static void add_worker_node(expert_container::sptr container, arg1_t const &arg1)
Definition: expert_factory.hpp:243
static void add_worker_node(expert_container::sptr container, arg1_t const &arg1, arg2_t const &arg2, arg3_t const &arg3, arg4_t const &arg4, arg5_t const &arg5, arg6_t const &arg6, arg7_t const &arg7, arg7_t const &arg8)
Definition: expert_factory.hpp:342
Definition: expert_container.hpp:20
#define UHD_API
Definition: config.h:87
static void add_worker_node(expert_container::sptr container, arg1_t const &arg1, arg2_t const &arg2, arg3_t const &arg3, arg4_t const &arg4, arg5_t const &arg5, arg6_t const &arg6)
Definition: expert_factory.hpp:302
Definition: expert_container.hpp:22
virtual property< T > & add_desired_subscriber(const subscriber_type &subscriber)=0
Definition: property_tree.hpp:78
std::shared_ptr< property_tree > sptr
Definition: property_tree.hpp:223
static property< data_t > & add_prop_node(expert_container::sptr container, property_tree::sptr subtree, const fs_path &path, const data_t &init_val, const auto_resolve_mode_t mode=AUTO_RESOLVE_OFF)
Definition: expert_factory.hpp:124
static property< data_t > & add_dual_prop_node(expert_container::sptr container, property_tree::sptr subtree, const fs_path &path, const std::string &desired_name, const std::string &coerced_name, const data_t &init_val, const auto_resolve_mode_t mode=AUTO_RESOLVE_OFF)
Definition: expert_factory.hpp:152