177    virtual const T 
get(
void) 
const = 0;
 
 
  224    typedef std::shared_ptr<property_tree> 
sptr;
 
  243    virtual std::vector<std::string> 
list(
const fs_path& path) 
const = 0;
 
  246    template <
typename T>
 
  250    template <
typename T>
 
  254    template <
typename T>
 
  255    std::shared_ptr<property<T>> 
pop(
const fs_path& path);
 
  259    virtual std::shared_ptr<property_iface> _pop(
const fs_path& path) = 0;
 
  262    virtual void _create(
 
  263        const fs_path& path, 
const std::shared_ptr<property_iface>& prop) = 0;
 
  266    virtual std::shared_ptr<property_iface>& _access(
const fs_path& path) 
const = 0;
 
 
Definition property_tree.hpp:26
virtual ~property_iface()=default
Definition property_tree.hpp:222
property< T > & create(const fs_path &path, coerce_mode_t coerce_mode=AUTO_COERCE)
Create a new property entry in the tree.
Definition property_tree.ipp:180
std::shared_ptr< property< T > > pop(const fs_path &path)
Pop a property off the tree, and returns the property.
Definition property_tree.ipp:198
std::shared_ptr< property_tree > sptr
Definition property_tree.hpp:224
virtual ~property_tree(void)=0
virtual std::vector< std::string > list(const fs_path &path) const =0
Get an iterable to all things in the given path.
virtual void remove(const fs_path &path)=0
Remove a property or directory (recursive)
property< T > & access(const fs_path &path)
Get access to a property in the tree.
Definition property_tree.ipp:187
virtual sptr subtree(const fs_path &path) const =0
Get a subtree with a new root starting at path.
static sptr make(void)
Create a new + empty property tree.
virtual bool exists(const fs_path &path) const =0
True if the path exists in the tree.
coerce_mode_t
Definition property_tree.hpp:226
@ AUTO_COERCE
Definition property_tree.hpp:226
@ MANUAL_COERCE
Definition property_tree.hpp:226
Definition property_tree.hpp:80
virtual property< T > & set_coerced(const T &value)=0
virtual property< T > & set_coercer(const coercer_type &coercer)=0
std::function< T(void)> publisher_type
Definition property_tree.hpp:83
virtual const T get_desired(void) const =0
virtual bool empty(void) const =0
virtual property< T > & add_coerced_subscriber(const subscriber_type &subscriber)=0
virtual ~property(void)=0
Definition property_tree.hpp:197
virtual property< T > & update(void)=0
std::function< T(const T &)> coercer_type
Definition property_tree.hpp:84
std::function< void(const T &)> subscriber_type
Definition property_tree.hpp:82
virtual property< T > & add_desired_subscriber(const subscriber_type &subscriber)=0
virtual property< T > & set_publisher(const publisher_type &publisher)=0
virtual property< T > & set(const T &value)=0
virtual const T get(void) const =0
#define UHD_API_HEADER
Definition config.h:88
#define UHD_API
Definition config.h:87
Definition build_info.hpp:12
boost::noncopyable noncopyable
Definition noncopyable.hpp:45
UHD_API fs_path operator/(const fs_path &, const fs_path &)
Definition property_tree.hpp:207
UHD_API fs_path(const char *)
UHD_API std::string leaf(void) const
UHD_API fs_path branch_path(void) const
UHD_API fs_path(const std::string &)