|
Fang-Robotics-MCB
Fang Robotics Team Codebase
|
#include <move_command.hpp>


Public Member Functions | |
| MoveCommand (SetpointSubsystem *setpointSubsystem, float targetDisplacement, uint32_t moveTime, uint32_t pauseAfterMoveTime, bool setToTargetOnEnd, float setpointTolerance) | |
| const char * | getName () const override |
| bool | isReady () override |
| void | initialize () override |
| void | execute () override |
| void | end (bool interrupted) override |
| bool | isFinished () const override |
Public Member Functions inherited from tap::control::Command | |
| Command () | |
| virtual | ~Command () |
| mockable subsystem_scheduler_bitmap_t | getRequirementsBitwise () const |
| int | getGlobalIdentifier () const |
| mockable void | addSubsystemRequirement (Subsystem *requirement) |
Additional Inherited Members | |
Protected Attributes inherited from tap::control::Command | |
| command_scheduler_bitmap_t | commandRequirementsBitwise = 0 |
Displaces the connected subsystem some value in some desired time. Currently pass in a displacement and time to move and it uses tap::arch::getTimeMilliseconds() to determine the speed to move at.
Ends if subsystem is offline.
| tap::control::setpoint::MoveCommand::MoveCommand | ( | SetpointSubsystem * | setpointSubsystem, |
| float | targetDisplacement, | ||
| uint32_t | moveTime, | ||
| uint32_t | pauseAfterMoveTime, | ||
| bool | setToTargetOnEnd, | ||
| float | setpointTolerance | ||
| ) |
| [in] | setpointSubsystem | The subsystem associated with the rotate command. |
| [in] | targetDisplacement | The desired change in subsystem value in subsystem units. |
| [in] | moveTime | The time it takes to move the subsystem to the desired value in milliseconds. |
| [in] | pauseAfterMoveTime | Time in milliseconds that the command will wait after reaching the target displacement before the command is considered complete. |
| [in] | setToTargetOnEnd | if true the command will set the subsystem setpoint to the ideal target value on an uninterrupted end() if subsystem is online and unjammed, otherwise the subsystem will always set the setpoint to the its current value on end(). |
| [in] | setpointTolerance | The difference between current and desired value when the command will be considered to be completed (used in the isFinished function). Uses the same units as the subsystem's setpoint. |
), and then multiplying this by the period (how often the ramp is called)
|
overridevirtual |
The action to take when the command ends. Called when either the command finishes normally, or when it interrupted/canceled.
| [in] | interrupted | whether the command was interrupted/canceled. |
Implements tap::control::Command.
|
overridevirtual |
The main body of a command. Called repeatedly while the command is scheduled by a CommandScheduler.
Implements tap::control::Command.
|
inlineoverridevirtual |
Implements tap::control::Command.
|
overridevirtual |
The initial subroutine of a command. Called once when the command is initially scheduled by a CommandScheduler.
Note that command instances are re-used: a single command could be initialized, run, finished, then later initialized again. Ensure that initialize() resets any state stored in the command!
Implements tap::control::Command.
|
overridevirtual |
Whether the command has finished. Once a Command finishes, the scheduler will call the end() function and un-schedule it. If a Command is naturally finished (i.e. isFinished() == true), then the CommandScheduler will pass in false to end(). If, for example, another Command is added that in turn stops the Command from executing, then the CommandScheduler will pass in true to end().
Implements tap::control::Command.
|
inlineoverridevirtual |
A check called right before a command is scheduled to determine whether or not a command should be scheduled. If return is true then the command is scheduled, if false then the command is not scheduled.
Not forced to be overridden, returns true by default.
Reimplemented from tap::control::Command.