2 #include <State/Expression.hpp>
4 #include <Process/TimeValue.hpp>
6 #include <Scenario/Document/Event/ExecutionStatus.hpp>
7 #include <Scenario/Document/Metatypes.hpp>
9 #include <score/model/Component.hpp>
10 #include <score/model/EntityImpl.hpp>
11 #include <score/model/IdentifiedObject.hpp>
12 #include <score/model/Identifier.hpp>
13 #include <score/selection/Selectable.hpp>
14 #include <score/tools/Metadata.hpp>
15 #include <score/tools/std/Optional.hpp>
17 #include <score_plugin_scenario_export.h>
32 class ScenarioInterface;
39 SCORE_SERIALIZE_FRIENDS
50 template <
typename DeserializerVisitor>
51 EventModel(DeserializerVisitor&& vis, QObject* parent)
65 using StateIdVec = ossia::small_vector<Id<StateModel>, 2>;
66 const StateIdVec& states() const noexcept;
69 const
State::Expression& condition() const noexcept;
70 OffsetBehavior offsetBehavior() const noexcept;
71 const
TimeVal& date() const noexcept;
72 void translate(const
TimeVal& deltaTime);
73 ExecutionStatus status() const noexcept;
75 bool active() const noexcept;
77 void setCondition(const
State::Expression& arg);
78 void setDate(const
TimeVal& date);
79 void setStatus(
Scenario::ExecutionStatus status, const
Scenario::ScenarioInterface&);
80 void setOffsetBehavior(
Scenario::OffsetBehavior);
82 const QBrush& color(const
Process::Style&) const noexcept;
85 void dateChanged(const
TimeVal& arg_1)
86 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, dateChanged, arg_1)
87 void conditionChanged(const
State::Expression& arg_1)
88 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, conditionChanged, arg_1)
89 void statesChanged() E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, statesChanged)
90 void statusChanged(
Scenario::ExecutionStatus status)
91 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, statusChanged, status)
92 void offsetBehaviorChanged(OffsetBehavior arg_1)
93 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, offsetBehaviorChanged, arg_1)
96 E_SIGNAL(SCORE_PLUGIN_SCENARIO_EXPORT, timeSyncChanged, oldt, newt)
99 Id<TimeSyncModel> m_timeSync;
101 State::Expression m_condition;
102 TimeVal m_date{TimeVal::zero()};
104 ExecutionStatusProperty m_status{};
105 OffsetBehavior m_offset{};
108 Scenario::OffsetBehavior,
109 offsetBehavior READ offsetBehavior WRITE setOffsetBehavior NOTIFY
110 offsetBehaviorChanged,
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: EventModel.hpp:36
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
Base classes and tools to implement processes and layers.
Definition: JSONVisitor.hpp:1324
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