2015-02-13 19:40:23 -05:00
|
|
|
#ifndef ROLLOUT_H
|
|
|
|
#define ROLLOUT_H
|
2015-01-16 19:29:55 -05:00
|
|
|
|
2015-01-17 12:55:51 -05:00
|
|
|
#include "Commands/Command.h"
|
2015-03-09 10:53:35 -04:00
|
|
|
#include "../../DentRobot.h"
|
2015-02-03 15:55:11 -05:00
|
|
|
#include "../../DentRobot.h"
|
2015-01-16 19:29:55 -05:00
|
|
|
#include "WPILib.h"
|
|
|
|
|
2015-03-01 17:19:00 -05:00
|
|
|
/**
|
|
|
|
* @brief Rolls collector motors out until a timeout is reached
|
|
|
|
*/
|
2015-02-13 19:40:23 -05:00
|
|
|
class RollOut: public Command{
|
2015-01-16 20:12:48 -05:00
|
|
|
public:
|
2015-03-01 17:19:00 -05:00
|
|
|
/**
|
|
|
|
* @brief Constructs RollOut
|
2015-03-09 10:07:54 -04:00
|
|
|
*
|
2015-03-23 10:52:02 -04:00
|
|
|
* @param timeout Timeout in seconds (default: 2.0)
|
2015-03-01 17:19:00 -05:00
|
|
|
*/
|
2015-03-23 10:52:02 -04:00
|
|
|
RollOut(double timeout = 2.0);
|
2015-03-01 17:19:00 -05:00
|
|
|
/**
|
|
|
|
* @brief Initializes the class
|
|
|
|
*/
|
2015-01-16 20:12:48 -05:00
|
|
|
void Initialize();
|
2015-03-01 17:19:00 -05:00
|
|
|
/**
|
|
|
|
* @brief Rolls the four collector motors out
|
|
|
|
*/
|
2015-01-16 20:12:48 -05:00
|
|
|
void Execute();
|
2015-03-01 17:19:00 -05:00
|
|
|
/**
|
|
|
|
* @brief Checks if the command is finished
|
|
|
|
*
|
|
|
|
* @return True only if the timeout was reached
|
|
|
|
*/
|
2015-01-16 20:12:48 -05:00
|
|
|
bool IsFinished();
|
2015-03-01 17:19:00 -05:00
|
|
|
/**
|
|
|
|
* @brief Sets the collector to stop
|
|
|
|
*/
|
2015-01-16 20:12:48 -05:00
|
|
|
void End();
|
2015-03-01 17:19:00 -05:00
|
|
|
/**
|
|
|
|
* @brief Calls End()
|
|
|
|
*/
|
2015-01-16 20:12:48 -05:00
|
|
|
void Interrupted();
|
2015-01-16 19:29:55 -05:00
|
|
|
};
|
|
|
|
#endif
|
2015-02-08 12:26:15 -05:00
|
|
|
// vim: ts=2:sw=2:et
|