This worked for us:
In Robot.h
Code:
private:
frc::SendableChooser<frc::Command*> autoChooser;
std::unique_ptr<frc::Command> selectedMode;
In Robot.cpp
Code:
Robot::RobotInit() {
autoChooser.AddDefault("Do Nothing", new DoNothing(15));
autoChooser.AddObject("Gear Align Center", new GearAlignCenter());
SmartDashboard::PutData("Auto Chooser", &autoChooser);
}
Robot::AutonomousInit() {
selectedMode.reset(autoChooser.GetSelected());
if(selectedMode != nullptr) {
selectedMode->Start();
}
}
Good luck with the season!
Best Wishes,
Drew