27 std::shared_ptr<ThunderAutoProject> project,
32 explicit operator bool()
const {
return isValid(); }
34 void Initialize()
override;
35 void Execute()
override;
36 void End(
bool interrupted)
override;
37 bool IsFinished()
override;
41 void setupCurrentStep();
44 const std::string m_autoModeName;
45 std::unique_ptr<ThunderAutoMode> m_autoMode;
46 std::shared_ptr<ThunderAutoProject> m_project;
50 bool m_isFinished =
true;
51 std::shared_ptr<ThunderAutoModeStep> m_currentStep;
52 frc2::CommandPtr m_currentStepCommand = frc2::cmd::None();
53 bool m_currentStepWasInitialized =
false;
54 bool m_firstTrajectoryWasSeen =
false;