2 #include <State/Expression.hpp>
4 #include <Process/Dataflow/TimeSignature.hpp>
5 #include <Process/TimeValue.hpp>
7 #include <Scenario/Document/Event/ExecutionStatus.hpp>
8 #include <Scenario/Document/Metatypes.hpp>
9 #include <Scenario/Document/VerticalExtent.hpp>
11 #include <score/model/Component.hpp>
12 #include <score/model/EntityImpl.hpp>
13 #include <score/model/IdentifiedObject.hpp>
14 #include <score/model/Identifier.hpp>
15 #include <score/selection/Selectable.hpp>
16 #include <score/tools/Metadata.hpp>
17 #include <score/tools/std/Optional.hpp>
21 #include <score_plugin_scenario_export.h>
30 class ScenarioInterface;
37 SCORE_SERIALIZE_FRIENDS
46 template <
typename DeserializerVisitor>
54 const TimeVal& date() const noexcept;
57 void addEvent(const
Id<EventModel>&);
58 bool removeEvent(const
Id<EventModel>&);
61 using EventIdVec = ossia::small_vector<
Id<EventModel>, 2>;
62 const EventIdVec& events() const noexcept;
63 void setEvents(const TimeSyncModel::EventIdVec& events);
65 State::Expression expression() const noexcept {
return m_expression; }
68 bool active() const noexcept;
69 void setActive(
bool active);
71 bool autotrigger() const noexcept;
72 void setAutotrigger(
bool t);
74 bool isStartPoint() const noexcept;
75 void setStartPoint(
bool t);
77 ossia::musical_sync musicalSync() const noexcept;
78 void setMusicalSync(ossia::musical_sync sig);
80 void setWaiting(
bool);
81 bool waiting() const noexcept;
84 void dateChanged(const
TimeVal& arg_1)
85 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, dateChanged, arg_1)
87 void newEvent(const
Id<
Scenario::EventModel>& eventId)
88 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, newEvent, eventId)
89 void eventRemoved(const
Id<
Scenario::EventModel>& eventId)
90 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, eventRemoved, eventId)
92 void triggerChanged(const
State::Expression& arg_1)
93 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, triggerChanged, arg_1)
94 void activeChanged() E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, activeChanged)
96 void autotriggerChanged(
bool b)
97 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, autotriggerChanged, b)
98 void startPointChanged(
bool b)
99 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, startPointChanged, b)
101 void triggeredByGui() const E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, triggeredByGui)
103 void waitingChanged(
bool b) const
104 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, waitingChanged, b)
106 double musicalSyncChanged(ossia::musical_sync sync)
107 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, musicalSyncChanged, sync)
111 musicalSync READ musicalSync WRITE setMusicalSync NOTIFY musicalSyncChanged)
112 PROPERTY(
bool, active READ active WRITE setActive NOTIFY activeChanged)
114 bool, autotrigger READ autotrigger WRITE setAutotrigger NOTIFY autotriggerChanged)
116 bool, startPoint READ isStartPoint WRITE setStartPoint NOTIFY startPointChanged)
119 expression READ expression WRITE setExpression NOTIFY triggerChanged)
126 ossia::musical_sync m_musicalSync{-1.};
127 bool m_active{
false};
128 bool m_autotrigger{
false};
129 bool m_startPoint{
false};
130 bool m_waiting{
false};
Definition: VisitorInterface.hpp:53
Definition: VisitorInterface.hpp:61
Metadata to get the name that will be shown in the user interface.
Definition: lib/score/tools/Metadata.hpp:42
Definition: TimeSyncModel.hpp:34
The Selectable class.
Definition: Selectable.hpp:14
The id_base_t class.
Definition: Identifier.hpp:57
Base for complex model objects.
Definition: EntityBase.hpp:24
Main plug-in of score.
Definition: score-plugin-dataflow/Dataflow/PortItem.hpp:14
Utilities for OSSIA data structures.
Definition: DeviceInterface.hpp:33
Definition: TimeValue.hpp:21