Timer: add hasElapsed, advanceIfElapsed (#2322)

The current hasPeriodPassed() function is confusing.  In preparation for deprecating it,
add new advanceIfElapsed() function with same functionality and hasElapsed() function
which only checks that the time period has elapsed and does not advance the timer.

Also fix a couple of incorrect usages of hasPeriodPassed().
This commit is contained in:
Oblarg
2020-02-08 13:23:29 -05:00
committed by GitHub
parent 29c82527a5
commit f0a18f31e7
13 changed files with 72 additions and 24 deletions

View File

@@ -247,5 +247,5 @@ void MecanumControllerCommand::Execute() {
void MecanumControllerCommand::End(bool interrupted) { m_timer.Stop(); }
bool MecanumControllerCommand::IsFinished() {
return m_timer.HasPeriodPassed(m_trajectory.TotalTime());
return m_timer.HasElapsed(m_trajectory.TotalTime());
}

View File

@@ -138,5 +138,5 @@ void RamseteCommand::Execute() {
void RamseteCommand::End(bool interrupted) { m_timer.Stop(); }
bool RamseteCommand::IsFinished() {
return m_timer.HasPeriodPassed(m_trajectory.TotalTime());
return m_timer.HasElapsed(m_trajectory.TotalTime());
}

View File

@@ -1,5 +1,5 @@
/*----------------------------------------------------------------------------*/
/* Copyright (c) 2019 FIRST. All Rights Reserved. */
/* Copyright (c) 2019-2020 FIRST. All Rights Reserved. */
/* Open Source Software - may be modified and shared by FRC teams. The code */
/* must be accompanied by the FIRST BSD license file in the root directory of */
/* the project. */
@@ -21,6 +21,6 @@ void WaitCommand::Initialize() {
void WaitCommand::End(bool interrupted) { m_timer.Stop(); }
bool WaitCommand::IsFinished() { return m_timer.HasPeriodPassed(m_duration); }
bool WaitCommand::IsFinished() { return m_timer.HasElapsed(m_duration); }
bool WaitCommand::RunsWhenDisabled() const { return true; }