12 #pragma warning(disable : 4521)
19 #include "frc2/command/CommandGroupBase.h"
20 #include "frc2/command/CommandHelper.h"
42 template <
class... Types,
43 typename = std::enable_if_t<std::conjunction_v<
44 std::is_base_of<Command, std::remove_reference_t<Types>>...>>>
46 AddCommands(std::forward<Types>(commands)...);
57 template <
class... Types>
58 void AddCommands(Types&&... commands) {
59 std::vector<std::unique_ptr<Command>> foo;
60 ((void)foo.emplace_back(std::make_unique<std::remove_reference_t<Types>>(
61 std::forward<Types>(commands))),
63 AddCommands(std::move(foo));
70 void End(
bool interrupted)
override;
77 void AddCommands(std::vector<std::unique_ptr<Command>>&& commands)
override;
79 std::vector<std::unique_ptr<Command>> m_commands;
80 bool m_runWhenDisabled{
true};
81 bool m_finished{
false};
82 bool isRunning =
false;