2#include <ossia/editor/scenario/scenario.hpp>
4#include <ossia-qt/score/qml_autom.hpp>
5#include <ossia-qt/score/qml_sync.hpp>
7#include <ossia/detail/hash_map.hpp>
17class qml_scenario :
public qml_process
19 W_OBJECT(qml_scenario)
22 qml_scenario(QQuickItem* parent =
nullptr);
23 ~qml_scenario()
override;
25 void registerInterval(qml_interval*);
26 void unregisterInterval(qml_interval*);
28 void registerSync(qml_sync*);
29 void unregisterSync(qml_sync*);
31 void setup()
override;
32 std::shared_ptr<ossia::time_process> process()
const override;
34 qml_sync* startSync()
const;
37 void setStartSync(qml_sync* s);
41 void startSyncChanged(qml_sync* arg_1) E_SIGNAL(OSSIA_EXPORT, startSyncChanged, arg_1);
44 void reset_impl()
override;
46 qml_sync* m_startSync{};
47 std::shared_ptr<ossia::scenario> m_impl;
49 ossia::hash_set<qml_sync*> m_syncs;
50 ossia::hash_set<qml_interval*> m_intervals;
53 qml_sync*, startSync READ startSync WRITE setStartSync NOTIFY startSyncChanged)