2015-01-16 19:49:16 -05:00
|
|
|
#ifndef DENTROBOT_H
|
|
|
|
#define DENTROBOT_H
|
|
|
|
#include "WPILib.h"
|
2015-01-17 12:21:16 -05:00
|
|
|
#include "OI.h"
|
|
|
|
#include "Subsystems/Elevator.h"
|
2015-02-10 20:12:41 -05:00
|
|
|
#include "Subsystems/BinElevator.h"
|
2015-01-17 12:21:16 -05:00
|
|
|
#include "Subsystems/Drivetrain.h"
|
|
|
|
#include "Subsystems/Collector.h"
|
2015-02-20 15:54:41 -05:00
|
|
|
#include "Subsystems/Pneumatics.h"
|
2015-02-07 12:32:46 -05:00
|
|
|
#include "Commands/Autonomous/Autonomous.h"
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief The Hitchhikers 2015 robot, Dent
|
|
|
|
*
|
|
|
|
* Features a 4-motor collector, 4-motor mecanum drivetrain, two one-motor elevators
|
|
|
|
*/
|
2015-03-08 21:27:33 -04:00
|
|
|
class DentRobot: public IterativeRobot{
|
2015-02-02 20:43:22 -05:00
|
|
|
private:
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief The default driving command
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
Command *driveCommand = NULL;
|
|
|
|
public:
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief Constructs DentRobot
|
|
|
|
*/
|
2015-02-07 12:32:46 -05:00
|
|
|
DentRobot();
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief The 2-joystick OI
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
static OI* oi;
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief The 4-motor Collctor
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
static Collector* collector;
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief The 4-motor mechanum Drivetrain
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
static Drivetrain* drivetrain;
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief The main one-motor Elevator for lifting totes
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
static Elevator* elevator;
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief The back one-motor Elevator for lifting totes or bins
|
|
|
|
*/
|
2015-02-10 20:12:41 -05:00
|
|
|
static BinElevator* binElevator;
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
2015-03-09 09:48:18 -04:00
|
|
|
* @brief The Pneumatics system (unused)
|
2015-03-02 08:28:03 -05:00
|
|
|
*/
|
2015-02-20 15:54:41 -05:00
|
|
|
static Pneumatics* pneumatics;
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief The Autonomous command
|
|
|
|
*/
|
2015-02-07 12:50:36 -05:00
|
|
|
static CommandGroup* aut;
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief Initializes the robot
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
void RobotInit();
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief Periodically run when disabled
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
void DisabledPeriodic();
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief Initializes the autonomous period
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
void AutonomousInit();
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief Periodically run when enabled in autonomous
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
void AutonomousPeriodic();
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief Initializes the teleop period
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
void TeleopInit();
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief Periodically run when enabled in autonomous
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
void TeleopPeriodic();
|
2015-03-02 08:28:03 -05:00
|
|
|
/**
|
|
|
|
* @brief Periodically run when enabled in test mode
|
|
|
|
*/
|
2015-02-02 20:43:22 -05:00
|
|
|
void TestPeriodic();
|
2015-01-16 19:49:16 -05:00
|
|
|
};
|
|
|
|
#endif
|
|
|
|
// vim: ts=2:sw=2:et
|