State Namespace Reference

Utilities for OSSIA data structures. More...

Detailed Description

Utilities for OSSIA data structures.

This namespace contains :

  • PIMPL wrappers for OSSIA classes, to diminish compile time at the cost of performance (which is not relevant at all for the user interface).
  • Useful widgets for the relevant types : widgets to select values, units, etc.
  • Parsers for various types : expressions, values, addresses.
  • Serializable forms of OSSIA classes. For instance we want to be able to represent addresses without using ossia::net::node_base since there may be no device matching this address yet. So instead we represent an address with a list of strings.

Classes

struct  DestinationQualifiers
 
struct  Address
 The Address struct. More...
 
struct  AddressAccessor
 
struct  AddressAccessorHead
 The AddressAccessorHead struct. More...
 
struct  Domain
 
struct  ExprData
 
struct  Message
 The Message struct. More...
 
struct  Relation
 
struct  Pulse
 
struct  Unit
 
class  AddressFragmentLineEdit
 
class  AddressLineEditBase
 The AddressLineEdit class. More...
 
class  AddressLineEdit
 
class  AddressAccessorLineEdit
 
class  AddressValidator
 The AddressValidator class. More...
 
class  AddressAccessorValidator
 
class  AddressFragmentValidator
 
class  EmptyModel
 
class  UnitModel
 
class  UnitWidget
 
class  DestinationQualifierWidget
 
class  BoolValueWidget
 
class  NumericValueWidget
 
class  NumericValueSetDialog
 
class  NumericDomainWidget
 
class  StringValueWidget
 
class  StringValueSetDialog
 
class  TypeComboBox
 
class  ValueWidget
 The ValueWidget class. More...
 
struct  VecEditBase
 
class  VecWidget
 
class  VecDomainWidget
 

Typedefs

using AccessorVector = ossia::destination_index
 
using BinaryOperator = ossia::expressions::binary_operator
 
using Expression = TreeNode< ExprData >
 
using MessageList = std::vector< Message >
 
using RelationMember = ossia::nullable_variant< State::Address, State::AddressAccessor, ossia::value >
 
using impulse = ossia::impulse
 
using vec2f = ossia::vec2f
 
using vec3f = ossia::vec3f
 
using vec4f = ossia::vec4f
 
using list_t = std::vector< ossia::value >
 
using Value = ossia::value
 
template<typename T >
using MatchingSpinbox = typename score::TemplatedSpinBox< T >::spinbox_type
 
using Vec2DEdit = VecWidget< 2 >
 
using Vec3DEdit = VecWidget< 3 >
 
using Vec4DEdit = VecWidget< 4 >
 

Enumerations

enum class  UnaryOperator { Not }
 

Functions

QString toString (const ossia::destination_qualifiers &d)
 
bool addressIsChildOf (const State::Address &root, const State::Address &maybe_child) noexcept
 
State::Address replaceAddressPart (const State::Address &old, const State::Address &replacement) noexcept
 
State::AddressAccessor replaceAddressPart (const State::AddressAccessor &old, const State::Address &replacement) noexcept
 
void rerootAddress (State::Address &current, const State::Address &oldRoot, const State::Address &newRoot)
 
std::optional< State::AddressparseAddress (const QString &str)
 
std::optional< State::AddressAccessorparseAddressAccessor (const QString &str)
 
QDebug operator<< (QDebug d, const State::Address &a)
 
QDebug operator<< (QDebug d, const DestinationQualifiers &a)
 
QDebug operator<< (QDebug d, const State::AccessorVector &a)
 
QDebug operator<< (QDebug d, const State::AddressAccessorHead &a)
 
QDebug operator<< (QDebug d, const State::AddressAccessor &a)
 
QStringList stringList (const State::Address &addr)
 
QDebug operator<< (QDebug s, const Message &mess)
 
bool operator< (const State::ExprData &lhs, const State::ExprData &rhs)
 
bool findAddressInExpression (const State::Expression &expr, const State::Address &addr)
 
void replaceAddress (State::Expression &expr, const State::Address &oldAddr, const State::Address &newAddr)
 
SCORE_LIB_STATE_EXPORT std::optional< State::ExpressionparseExpression (const QString &str)
 
SCORE_LIB_STATE_EXPORT std::optional< State::ExpressionparseExpression (const std::string &str)
 
SCORE_LIB_STATE_EXPORT State::Expression defaultTrueExpression ()
 
SCORE_LIB_STATE_EXPORT State::Expression defaultFalseExpression ()
 
SCORE_LIB_STATE_EXPORT bool isTrueExpression (const QString &)
 True if the expression is "true" (the default case)
 
SCORE_LIB_STATE_EXPORT bool isEmptyExpression (const QString &)
 
bool operator< (const State::MessageList &, const State::MessageList &)
 
QString toString (const Pulse &pulse)
 
SCORE_LIB_STATE_EXPORT QString toString (const RelationMember &)
 
SCORE_LIB_STATE_EXPORT QString toString (const Relation &)
 
SCORE_LIB_STATE_EXPORT const QMap< ossia::expressions::comparator, QString > opToString ()
 
QLatin1String prettyUnitText (const ossia::unit_t &)
 
SCORE_LIB_STATE_EXPORT std::optional< State::AddressonUpdatableAddress (const State::Address &current, const QMimeData &mime)
 
SCORE_LIB_STATE_EXPORT std::optional< State::AddressAccessoronUpdatableAddress (const State::AddressAccessor &current, const QMimeData &mime)
 
QDebug & operator<< (QDebug &s, const Value &m)
 
std::optional< ossia::value > parseValue (std::string_view input)