OSSIA
Open Scenario System for Interactive Application
osc_address.hpp
1 #pragma once
2 #include <ossia/network/base/node.hpp>
3 #include <ossia/network/base/parameter.hpp>
4 #include <ossia/network/base/parameter_data.hpp>
5 namespace ossia::net
6 {
7 inline const std::string& osc_address(const ossia::net::full_parameter_data& d)
8 {
9  return d.address;
10 }
11 
12 inline const std::string& osc_address(const ossia::net::parameter_base& addr)
13 {
14  return addr.get_node().osc_address();
15 }
16 
20 OSSIA_EXPORT std::string address_string_from_node(const ossia::net::node_base&);
21 OSSIA_EXPORT std::string address_string_from_node(const ossia::net::parameter_base&);
22 
26 OSSIA_EXPORT std::string relative_address_string_from_nodes(
27  const ossia::net::node_base& node, const ossia::net::node_base& parent);
28 
32 OSSIA_EXPORT std::string osc_parameter_string(const ossia::net::parameter_base&);
33 OSSIA_EXPORT std::string osc_parameter_string(const ossia::net::node_base&);
34 
40 OSSIA_EXPORT std::string
41 osc_parameter_string_with_device(const ossia::net::parameter_base&);
42 OSSIA_EXPORT std::string osc_parameter_string_with_device(const ossia::net::node_base&);
43 
44 }
The node_base class.
Definition: network/base/node.hpp:48
The parameter_base class.
Definition: ossia/network/base/parameter.hpp:48
Full information about a parameter.
Definition: parameter_data.hpp:61