[commands] Replace Command HID inheritance with delegation (#4470)

This commit is contained in:
Starlight220
2022-10-23 22:09:44 +03:00
committed by GitHub
parent 9e1f9c1133
commit 09faf31b67
13 changed files with 1201 additions and 101 deletions

View File

@@ -9,3 +9,48 @@ using namespace frc2;
Trigger CommandGenericHID::Button(int button, frc::EventLoop* loop) const {
return GenericHID::Button(button, loop).CastTo<Trigger>();
}
Trigger CommandGenericHID::POV(int angle, frc::EventLoop* loop) const {
return POV(0, angle, loop);
}
Trigger CommandGenericHID::POV(int pov, int angle, frc::EventLoop* loop) const {
return Trigger(loop,
[this, pov, angle] { return this->GetPOV(pov) == angle; });
}
Trigger CommandGenericHID::POVUp(frc::EventLoop* loop) const {
return POV(0, loop);
}
Trigger CommandGenericHID::POVUpRight(frc::EventLoop* loop) const {
return POV(45, loop);
}
Trigger CommandGenericHID::POVRight(frc::EventLoop* loop) const {
return POV(90, loop);
}
Trigger CommandGenericHID::POVDownRight(frc::EventLoop* loop) const {
return POV(135, loop);
}
Trigger CommandGenericHID::POVDown(frc::EventLoop* loop) const {
return POV(180, loop);
}
Trigger CommandGenericHID::POVDownLeft(frc::EventLoop* loop) const {
return POV(225, loop);
}
Trigger CommandGenericHID::POVLeft(frc::EventLoop* loop) const {
return POV(270, loop);
}
Trigger CommandGenericHID::POVUpLeft(frc::EventLoop* loop) const {
return POV(315, loop);
}
Trigger CommandGenericHID::POVCenter(frc::EventLoop* loop) const {
return POV(360, loop);
}