blob: 04c8e3bb2cdd1f728dc348ff15ba73a52e6d2acc [file] [log] [blame]
Brian Silverman26e4e522015-12-17 01:56:40 -05001/*----------------------------------------------------------------------------*/
2/* Copyright (c) FIRST 2011. All Rights Reserved.
3 */
4/* Open Source Software - may be modified and shared by FRC teams. The code */
5/* must be accompanied by the FIRST BSD license file in $(WIND_BASE)/WPILib. */
6/*----------------------------------------------------------------------------*/
7
8#include "Buttons/HeldButtonScheduler.h"
9
10#include "Buttons/Button.h"
11#include "Commands/Command.h"
12
13HeldButtonScheduler::HeldButtonScheduler(bool last, Trigger *button,
14 Command *orders)
15 : ButtonScheduler(last, button, orders) {}
16
17void HeldButtonScheduler::Execute() {
18 if (m_button->Grab()) {
19 m_pressedLast = true;
20 m_command->Start();
21 } else {
22 if (m_pressedLast) {
23 m_pressedLast = false;
24 m_command->Cancel();
25 }
26 }
27}