2#include <score/model/path/ObjectPath.hpp>
3#include <score/serialization/DataStreamFwd.hpp>
4#include <score/tools/std/Optional.hpp>
6#include <ossia/detail/destination_index.hpp>
7#include <ossia/detail/optional.hpp>
12#include <score_lib_state_export.h>
18struct destination_qualifiers;
23struct DocumentContext;
40SCORE_LIB_STATE_EXPORT
void
43SCORE_LIB_STATE_EXPORT
void
60 operator const ossia::destination_qualifiers&()
const noexcept;
61 operator ossia::destination_qualifiers&()
noexcept;
66 const ossia::destination_qualifiers& get()
const noexcept;
67 ossia::destination_qualifiers& get()
noexcept;
70 std::unique_ptr<ossia::destination_qualifiers> qualifiers;
87 Address(QString d, QStringList p)
noexcept;
96 std::shared_ptr<const Anchor>
anchor;
98 bool anchored() const noexcept {
return bool(anchor); }
102 static bool validateString(
const QString& str);
103 static bool validateFragment(
const QString& s);
106 static std::optional<Address> fromString(
const QString& str);
112 QString toString()
const;
114 QString toString_unsafe()
const;
120 QString toShortString()
const;
125 bool isSet() const noexcept;
127 bool operator==(const
Address& a) const;
128 bool operator!=(const
Address& a) const;
131using AccessorVector = ossia::destination_index;
132SCORE_LIB_STATE_EXPORT
133QString toString(const ossia::destination_qualifiers& d);
146 State::Address a,
const AccessorVector& v,
const ossia::unit_t&)
noexcept;
155 QString toString_unsafe()
const;
156 QString toString()
const;
157 QString toShortString()
const;
162 bool isSet()
const noexcept;
179 QString toString()
const;
182SCORE_LIB_STATE_EXPORT
183bool addressIsChildOf(
186SCORE_LIB_STATE_EXPORT
190SCORE_LIB_STATE_EXPORT
194SCORE_LIB_STATE_EXPORT
199SCORE_LIB_STATE_EXPORT std::optional<State::Address> parseAddress(
const QString& str);
200SCORE_LIB_STATE_EXPORT std::optional<State::AddressAccessor>
201parseAddressAccessor(
const QString& str);
203SCORE_LIB_STATE_EXPORT QDebug operator<<(QDebug d,
const State::Address& a);
205SCORE_LIB_STATE_EXPORT QDebug operator<<(QDebug d,
const State::AccessorVector& a);
208SCORE_LIB_STATE_EXPORT QStringList stringList(
const State::Address& addr);
214struct SCORE_LIB_STATE_EXPORT hash<
State::Address>
220struct SCORE_LIB_STATE_EXPORT hash<
State::AddressAccessor>
227SCORE_SERIALIZE_DATASTREAM_DECLARE(SCORE_LIB_STATE_EXPORT,
State::Address)
Definition DataStreamVisitor.hpp:27
Definition DataStreamVisitor.hpp:202
The ObjectPath class.
Definition ObjectPath.hpp:37
Utilities for OSSIA data structures.
Definition DeviceInterface.hpp:35
void writeAnchor(DataStreamWriter &w, std::shared_ptr< const Anchor > &a)
Leaves the anchor empty, and the stream marked corrupt, on invalid data.
Definition AddressSerialization.cpp:32
Base toolkit upon which the software is built.
Definition Application.cpp:83
The AddressAccessorHead struct.
Definition Address.hpp:175
Definition Address.hpp:136
The Address struct.
Definition Address.hpp:81
std::shared_ptr< const Anchor > anchor
Set when the address names an object of this document.
Definition Address.hpp:96
Definition Address.hpp:33
Definition Address.hpp:47
Definition DocumentContext.hpp:18