Loading...
Searching...
No Matches
SetTrigger.hpp
1#pragma once
2#include <State/Expression.hpp>
3
4#include <Scenario/Commands/ScenarioCommandFactory.hpp>
5
6#include <score/command/Command.hpp>
7#include <score/model/path/Path.hpp>
8
9struct DataStreamInput;
10struct DataStreamOutput;
11
12namespace Scenario
13{
14class TimeSyncModel;
15namespace Command
16{
17class SCORE_PLUGIN_SCENARIO_EXPORT SetTrigger final : public score::Command
18{
19 SCORE_COMMAND_DECL(CommandFactoryName(), SetTrigger, "Change a trigger")
20public:
21 SetTrigger(const TimeSyncModel& tn, State::Expression trigger);
22
23 void undo(const score::DocumentContext& ctx) const override;
24 void redo(const score::DocumentContext& ctx) const override;
25
26protected:
27 void serializeImpl(DataStreamInput&) const override;
28 void deserializeImpl(DataStreamOutput&) override;
29
30private:
32 State::Expression m_trigger;
33 State::Expression m_previousTrigger;
34};
35}
36}
The Path class is a typesafe wrapper around ObjectPath.
Definition Path.hpp:52
Definition SetTrigger.hpp:18
Definition TimeSyncModel.hpp:34
The Command class.
Definition Command.hpp:34
Main plug-in of score.
Definition score-plugin-dataflow/Dataflow/PortItem.hpp:13
Definition DataStreamHelpers.hpp:99
Definition DataStreamHelpers.hpp:103
Definition DocumentContext.hpp:18