@Test public void testTeleopDriverCommandHandling() { for(ELogitech310 commandTrigger : SystemSettings.kTeleopCommandTriggers) { mTeleopCommandManager.stopRunningCommands(mClock.getCurrentTime()); mData.driverinput.set(commandTrigger, 1.0); updateRobot(); verify(mDriverInput).updateVisionCommands(anyDouble()); resetSpies(); } }
protected void updateVisionCommands(double pNow) { SystemSettings.VisionTarget visionTarget = null; if(mDriverInputCodex.isSet(DriveTeamInputMap.DRIVER_TRACK_TARGET_BTN)) { mTrackingType = ETrackingType.TARGET; visionTarget = SystemSettings.VisionTarget.HatchPort; if(!mTrackingType.equals(mLastTrackingType)) { mLog.error("Requesting command start"); mLog.error("Stopping teleop command queue"); mTeleopCommandManager.stopRunningCommands(pNow); mTeleopCommandManager.startCommands(new LimelightTargetLock(mDrive, mLimelight, 2, mTrackingType, this, false).setStopWhenTargetLost(false)); } } else { mTrackingType = null; if(mTeleopCommandManager.isRunningCommands()) mTeleopCommandManager.stopRunningCommands(pNow); } }
DriverInput extends Module implements IThrottleProvider, ITurnProvider { protected void updateVisionCommands(double pNow) { SystemSettings.VisionTarget visionTarget = null; if(mDriverInputCodex.isSet(DriveTeamInputMap.DRIVER_TRACK_TARGET_BTN)) { mTrackingType = ETrackingType.TARGET; visionTarget = SystemSettings.VisionTarget.HatchPort; if(!mTrackingType.equals(mLastTrackingType)) { mLog.error("Requesting command start"); mLog.error("Stopping teleop command queue"); mTeleopCommandManager.stopRunningCommands(pNow); mTeleopCommandManager.startCommands(new LimelightTargetLock(mDrive, mLimelight, 2, mTrackingType, this, false).setStopWhenTargetLost(false)); } } else { mTrackingType = null; if(mTeleopCommandManager.isRunningCommands()) mTeleopCommandManager.stopRunningCommands(pNow); } } }
DriverInput extends Module implements IThrottleProvider, ITurnProvider { protected void updateVisionCommands(double pNow) { SystemSettings.VisionTarget visionTarget = null; if(mDriverInputCodex.isSet(DriveTeamInputMap.DRIVER_TRACK_TARGET_BTN)) { mTrackingType = ETrackingType.TARGET; visionTarget = SystemSettings.VisionTarget.HatchPort; if(!mTrackingType.equals(mLastTrackingType)) { mLog.error("Requesting command start"); mLog.error("Stopping teleop command queue"); mTeleopCommandManager.stopRunningCommands(pNow); mTeleopCommandManager.startCommands(new LimelightTargetLock(mDrive, mLimelight, 2, mTrackingType, this, false).setStopWhenTargetLost(false)); } } else { mTrackingType = null; if(mTeleopCommandManager.isRunningCommands()) mTeleopCommandManager.stopRunningCommands(pNow); } } DriverInput(Drive pDrivetrain, Elevator pElevator, HatchFlower pHatchFlower, Intake pIntake, PneumaticIntake pPneumaticIntake, CargoSpit pCargoSpit, Limelight pLimelight, Data pData, CommandManager pTeleopCommandManager, CommandManager pAutonomousCommandManager, FourBar pFourBar, boolean pSimulated);  DriverInput(Drive pDrivetrain, Elevator pElevator, HatchFlower pHatchFlower, Intake pIntake, PneumaticIntake pPneumaticIntake, CargoSpit pCargoSpit, Limelight pLimelight, Data pData, CommandManager pTeleopCommandManager, CommandManager pAutonomousCommandManager, FourBar pFourBar); }
DriverInput extends Module implements IThrottleProvider, ITurnProvider { protected void updateVisionCommands(double pNow) { SystemSettings.VisionTarget visionTarget = null; if(mDriverInputCodex.isSet(DriveTeamInputMap.DRIVER_TRACK_TARGET_BTN)) { mTrackingType = ETrackingType.TARGET; visionTarget = SystemSettings.VisionTarget.HatchPort; if(!mTrackingType.equals(mLastTrackingType)) { mLog.error("Requesting command start"); mLog.error("Stopping teleop command queue"); mTeleopCommandManager.stopRunningCommands(pNow); mTeleopCommandManager.startCommands(new LimelightTargetLock(mDrive, mLimelight, 2, mTrackingType, this, false).setStopWhenTargetLost(false)); } } else { mTrackingType = null; if(mTeleopCommandManager.isRunningCommands()) mTeleopCommandManager.stopRunningCommands(pNow); } } DriverInput(Drive pDrivetrain, Elevator pElevator, HatchFlower pHatchFlower, Intake pIntake, PneumaticIntake pPneumaticIntake, CargoSpit pCargoSpit, Limelight pLimelight, Data pData, CommandManager pTeleopCommandManager, CommandManager pAutonomousCommandManager, FourBar pFourBar, boolean pSimulated);  DriverInput(Drive pDrivetrain, Elevator pElevator, HatchFlower pHatchFlower, Intake pIntake, PneumaticIntake pPneumaticIntake, CargoSpit pCargoSpit, Limelight pLimelight, Data pData, CommandManager pTeleopCommandManager, CommandManager pAutonomousCommandManager, FourBar pFourBar); @Override void modeInit(double pNow); @Override void periodicInput(double pNow); @Override void update(double pNow); boolean isDriverAllowingCommandsInTeleop(); boolean isAutoOverridePressed(); @Override void shutdown(double pNow); @Override double getThrottle(); @Override double getTurn(); }
DriverInput extends Module implements IThrottleProvider, ITurnProvider { protected void updateVisionCommands(double pNow) { SystemSettings.VisionTarget visionTarget = null; if(mDriverInputCodex.isSet(DriveTeamInputMap.DRIVER_TRACK_TARGET_BTN)) { mTrackingType = ETrackingType.TARGET; visionTarget = SystemSettings.VisionTarget.HatchPort; if(!mTrackingType.equals(mLastTrackingType)) { mLog.error("Requesting command start"); mLog.error("Stopping teleop command queue"); mTeleopCommandManager.stopRunningCommands(pNow); mTeleopCommandManager.startCommands(new LimelightTargetLock(mDrive, mLimelight, 2, mTrackingType, this, false).setStopWhenTargetLost(false)); } } else { mTrackingType = null; if(mTeleopCommandManager.isRunningCommands()) mTeleopCommandManager.stopRunningCommands(pNow); } } DriverInput(Drive pDrivetrain, Elevator pElevator, HatchFlower pHatchFlower, Intake pIntake, PneumaticIntake pPneumaticIntake, CargoSpit pCargoSpit, Limelight pLimelight, Data pData, CommandManager pTeleopCommandManager, CommandManager pAutonomousCommandManager, FourBar pFourBar, boolean pSimulated);  DriverInput(Drive pDrivetrain, Elevator pElevator, HatchFlower pHatchFlower, Intake pIntake, PneumaticIntake pPneumaticIntake, CargoSpit pCargoSpit, Limelight pLimelight, Data pData, CommandManager pTeleopCommandManager, CommandManager pAutonomousCommandManager, FourBar pFourBar); @Override void modeInit(double pNow); @Override void periodicInput(double pNow); @Override void update(double pNow); boolean isDriverAllowingCommandsInTeleop(); boolean isAutoOverridePressed(); @Override void shutdown(double pNow); @Override double getThrottle(); @Override double getTurn();  }