ConstrainedDisplacementPolicy.hpp
1 #pragma once
2 #include <Scenario/Process/Algorithms/Accessors.hpp>
3 #include <Scenario/Process/Algorithms/ContainersAccessors.hpp>
4 #include <Scenario/Process/Algorithms/StandardDisplacementPolicy.hpp>
5 #include <Scenario/Tools/dataStructures.hpp>
6 
7 namespace Scenario
8 {
9 
11 {
12 public:
13  static void init(
14  Scenario::ProcessModel& scenario,
15  const QVector<Id<TimeSyncModel>>& draggedElements);
16 
17  static void computeDisplacement(
18  Scenario::ProcessModel& scenario,
19  const QVector<Id<TimeSyncModel>>& draggedElements, const TimeVal& deltaTime,
20  ElementsProperties& elementsProperties);
21 
22  static QString name();
23 
24  template <typename... Args>
25  static void updatePositions(Args&&... args)
26  {
27  CommonDisplacementPolicy::updatePositions(std::forward<Args>(args)...);
28  }
29 
30  template <typename... Args>
31  static void revertPositions(Args&&... args)
32  {
33  CommonDisplacementPolicy::revertPositions(std::forward<Args>(args)...);
34  }
35 };
36 }
Definition: ConstrainedDisplacementPolicy.hpp:11
The core hierarchical and temporal process of score.
Definition: ScenarioModel.hpp:37
The id_base_t class.
Definition: Identifier.hpp:57
Main plug-in of score.
Definition: score-plugin-dataflow/Dataflow/PortItem.hpp:14
Definition: dataStructures.hpp:65
Definition: TimeValue.hpp:21