9#pragma warning(disable : 4521)
45 std::vector<std::unique_ptr<Command>>&& commands);
55 template <wpi::DecayedDerivedFrom<Command>... Commands>
73 template <wpi::DecayedDerivedFrom<Command>... Commands>
75 std::vector<std::unique_ptr<Command>> foo;
76 ((void)foo.emplace_back(std::make_unique<std::decay_t<Commands>>(
77 std::forward<Commands>(commands))),
86 void End(
bool interrupted) final;
98 bool m_runWhenDisabled{
true};
101 bool isRunning =
false;
CRTP implementation to allow polymorphic decorator functions in Command.
Definition: CommandHelper.h:27
A state machine representing a complete action to be performed by the robot.
Definition: Command.h:41
InterruptionBehavior
An enum describing the command's behavior when another command with a shared requirement is scheduled...
Definition: Command.h:173
@ kCancelIncoming
This command continues, and the incoming command is not scheduled.
A command composition that runs a set of commands in parallel, ending when the last command ends.
Definition: ParallelCommandGroup.h:34
ParallelCommandGroup(ParallelCommandGroup &)=delete
void AddCommands(Commands &&... commands)
Adds the given commands to the group.
Definition: ParallelCommandGroup.h:74
ParallelCommandGroup(Commands &&... commands)
Creates a new ParallelCommandGroup.
Definition: ParallelCommandGroup.h:56
ParallelCommandGroup(ParallelCommandGroup &&other)=default
ParallelCommandGroup(std::vector< std::unique_ptr< Command > > &&commands)
Creates a new ParallelCommandGroup.
Command::InterruptionBehavior GetInterruptionBehavior() const override
void End(bool interrupted) final
ParallelCommandGroup(const ParallelCommandGroup &)=delete
bool RunsWhenDisabled() const override
Definition: TrapezoidProfileSubsystem.h:12