blob: 37de3858d411e9d7806af723fef6ec7f203f9621 [file] [log] [blame]
Brian Silverman26e4e522015-12-17 01:56:40 -05001/*----------------------------------------------------------------------------*/
Brian Silverman1a675112016-02-20 20:42:49 -05002/* Copyright (c) FIRST 2011-2016. All Rights Reserved. */
Brian Silverman26e4e522015-12-17 01:56:40 -05003/* Open Source Software - may be modified and shared by FRC teams. The code */
Brian Silverman1a675112016-02-20 20:42:49 -05004/* must be accompanied by the FIRST BSD license file in the root directory of */
5/* the project. */
Brian Silverman26e4e522015-12-17 01:56:40 -05006/*----------------------------------------------------------------------------*/
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}