3#include <ossia/network/base/node.hpp>
4#include <ossia/network/common/parameter_properties.hpp>
11class OSSIA_EXPORT generic_node_base :
public ossia::net::node_base
14 ossia::net::device_base& m_device;
15 ossia::net::node_base*
const m_parent{};
18 generic_node_base() =
delete;
19 generic_node_base(
const generic_node_base&) =
delete;
20 generic_node_base(generic_node_base&&) =
delete;
21 generic_node_base& operator=(
const generic_node_base&) =
delete;
22 generic_node_base& operator=(generic_node_base&&) =
delete;
25 std::string name, ossia::net::device_base& aDevice, node_base& aParent);
27 generic_node_base(std::string name, ossia::net::device_base& aDevice);
29 ossia::net::device_base& get_device() const final override;
30 ossia::net::node_base* get_parent() const final override;
32 ossia::net::node_base& set_name(std::
string) final override;
35 void on_address_change() final override;
38class OSSIA_EXPORT generic_node : public generic_node_base
41 generic_node(std::string name, ossia::net::device_base& aDevice, node_base& aParent);
42 generic_node(std::string name, ossia::net::device_base& aDevice);
44 ~generic_node()
override;
46 ossia::net::parameter_base* get_parameter() const final override;
47 ossia::net::parameter_base* create_parameter(ossia::val_type type) final override;
48 void set_parameter(std::unique_ptr<ossia::net::parameter_base> addr) final override;
49 bool remove_parameter() final override;
52 std::unique_ptr<ossia::net::parameter_base> m_parameter;
55 std::unique_ptr<node_base> make_child(const std::
string& name) final override;
57 void removing_child(node_base&) final
override { }
The protocol_base class.
Definition protocol.hpp:40