2#include <ossia/editor/scenario/time_signature.hpp>
4#include <ossia-qt/time_value.hpp>
10using musical_sync = double;
18 friend bool operator==(
const bar_time& lhs,
const bar_time& rhs)
noexcept
20 return lhs.bars == rhs.bars && lhs.quarters == rhs.quarters
21 && lhs.semiquavers == rhs.semiquavers && lhs.cents == rhs.cents;
23 friend bool operator!=(
const bar_time& lhs,
const bar_time& rhs)
noexcept
30inline QDataStream& operator<<(QDataStream& i,
const ossia::time_signature& sel)
32 return i << sel.upper << sel.lower;
35inline QDataStream& operator>>(QDataStream& i, ossia::time_signature& sel)
37 return i >> sel.upper >> sel.lower;
40inline QDataStream& operator<<(QDataStream& i,
const ossia::bar_time& sel)
42 return i << sel.bars << sel.quarters << sel.semiquavers << sel.cents;
45inline QDataStream& operator>>(QDataStream& i, ossia::bar_time& sel)
47 return i >> sel.bars >> sel.quarters >> sel.semiquavers >> sel.cents;
50Q_DECLARE_METATYPE(ossia::musical_sync)
51W_REGISTER_ARGTYPE(ossia::musical_sync)
53Q_DECLARE_METATYPE(ossia::bar_time)
54W_REGISTER_ARGTYPE(ossia::bar_time)
56Q_DECLARE_METATYPE(ossia::time_signature)
57W_REGISTER_ARGTYPE(ossia::time_signature)