StandardCreationPolicy.hpp
1 #pragma once
2 #include <Process/TimeValue.hpp>
3 
4 #include <score/model/Identifier.hpp>
5 
6 namespace Scenario
7 {
8 class IntervalModel;
9 class EventModel;
10 class StateModel;
11 class CommentBlockModel;
12 
13 class TimeSyncModel;
14 class ProcessModel;
15 struct VerticalExtent;
16 template <typename T>
18 template <>
20 {
21 public:
22  static void undo(const Id<CommentBlockModel>& id, Scenario::ProcessModel& s);
23 
24  static CommentBlockModel& redo(
25  const Id<CommentBlockModel>& id, const TimeVal& date, double y,
27 };
28 
29 template <>
31 {
32 public:
33  static void undo(const Id<TimeSyncModel>& id, Scenario::ProcessModel& s);
34 
35  static TimeSyncModel&
36  redo(const Id<TimeSyncModel>& id, const TimeVal& date, Scenario::ProcessModel& s);
37 };
38 
39 template <>
41 {
42 public:
43  static void undo(const Id<EventModel>& id, Scenario::ProcessModel& s);
44 
45  static EventModel&
46  redo(const Id<EventModel>& id, TimeSyncModel& timesync, Scenario::ProcessModel& s);
47 };
48 
49 template <>
51 {
52 public:
53  static void undo(const Id<StateModel>& id, Scenario::ProcessModel& s);
54 
55  static StateModel&
56  redo(const Id<StateModel>& id, EventModel& ev, double y, Scenario::ProcessModel& s);
57 };
58 
59 template <>
61 {
62 public:
63  static void undo(const Id<IntervalModel>& id, Scenario::ProcessModel& s);
64 
65  static IntervalModel& redo(
66  const Id<IntervalModel>& id, StateModel& sst, StateModel& est, double ypos,
67  bool graphal, Scenario::ProcessModel& s);
68 };
69 
70 } // namespace Scenario
Definition: CommentBlockModel.hpp:25
Definition: EventModel.hpp:36
Definition: IntervalModel.hpp:50
The core hierarchical and temporal process of score.
Definition: ScenarioModel.hpp:37
Definition: StandardCreationPolicy.hpp:17
Definition: StateModel.hpp:63
Definition: TimeSyncModel.hpp:35
The id_base_t class.
Definition: Identifier.hpp:57
Main plug-in of score.
Definition: score-plugin-dataflow/Dataflow/PortItem.hpp:14
Definition: TimeValue.hpp:21