9#pragma warning(disable : 4521)
44 template <wpi::DecayedDerivedFrom<Command>... Commands>
62 template <wpi::DecayedDerivedFrom<Command>... Commands>
64 std::vector<std::unique_ptr<Command>> foo;
65 ((void)foo.emplace_back(std::make_unique<std::decay_t<Commands>>(
66 std::forward<Commands>(commands))),
75 void End(
bool interrupted) final;
87 bool m_runWhenDisabled{
true};
90 bool m_finished{
false};
91 bool isRunning =
false;
CRTP implementation to allow polymorphic decorator functions in Command.
Definition CommandHelper.h:25
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 composition that runs a set of commands in parallel, ending when any one of the commands ends and i...
Definition ParallelRaceGroup.h:33
ParallelRaceGroup(const ParallelRaceGroup &)=delete
Command::InterruptionBehavior GetInterruptionBehavior() const override
ParallelRaceGroup(ParallelRaceGroup &&other)=default
void AddCommands(Commands &&... commands)
Adds the given commands to the group.
Definition ParallelRaceGroup.h:63
ParallelRaceGroup(ParallelRaceGroup &)=delete
void End(bool interrupted) final
ParallelRaceGroup(std::vector< std::unique_ptr< Command > > &&commands)
Creates a new ParallelCommandRace.
ParallelRaceGroup(Commands &&... commands)
Definition ParallelRaceGroup.h:45
bool RunsWhenDisabled() const override
Definition FunctionalCommand.h:13
Implement std::hash so that hash_code can be used in STL containers.
Definition PointerIntPair.h:280