package com.team254.frc2015.behavior.routines; import com.team254.frc2015.HardwareAdaptor; import com.team254.frc2015.behavior.Commands; import com.team254.frc2015.behavior.RobotSetpoints; import com.team254.frc2015.subsystems.BottomCarriage; import com.team254.frc2015.subsystems.Drive; import com.team254.frc2015.subsystems.Intake; import com.team254.frc2015.subsystems.TopCarriage; import edu.wpi.first.wpilibj.PowerDistributionPanel; public abstract class Routine { protected Drive drive = HardwareAdaptor.kDrive; protected TopCarriage top_carriage = HardwareAdaptor.kTopCarriage; protected BottomCarriage bottom_carriage = HardwareAdaptor.kBottomCarriage; protected Intake intake = HardwareAdaptor.kIntake; protected PowerDistributionPanel pdp = HardwareAdaptor.kPDP; public abstract void reset(); public abstract RobotSetpoints update(Commands commands, RobotSetpoints existing_setpoints); public abstract void cancel(); public abstract boolean isFinished(); public abstract String getName(); }