[commands] Add static Trigger factories for robot mode changes (#5902)

This commit is contained in:
DeltaDizzy
2023-11-14 17:54:43 -06:00
committed by GitHub
parent 79dd795bc0
commit 09f3ed6a5f
7 changed files with 249 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
// Copyright (c) FIRST and other WPILib contributors.
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#include "frc2/command/button/RobotModeTriggers.h"
#include <frc/DriverStation.h>
using namespace frc2;
Trigger RobotModeTriggers::Autonomous() {
return Trigger{&frc::DriverStation::IsAutonomousEnabled};
}
Trigger RobotModeTriggers::Teleop() {
return Trigger{&frc::DriverStation::IsTeleopEnabled};
}
Trigger RobotModeTriggers::Disabled() {
return Trigger{&frc::DriverStation::IsDisabled};
}
Trigger RobotModeTriggers::Test() {
return Trigger{&frc::DriverStation::IsTestEnabled};
}

View File

@@ -212,3 +212,7 @@ Trigger Trigger::Debounce(units::second_t debounceTime,
return debouncer.Calculate(condition());
});
}
bool Trigger::Get() const {
return m_condition();
}