Exemplo n.º 1
0
	void Autonomous(void) {
		GetWatchdog().SetEnabled(true);
		bool isHybrid = false;
		Kinect* kinect = Kinect::GetInstance();
		isHybrid = (kinect->GetNumberOfPlayers() > 0);
		if (!isHybrid) {
			_driveControl.initializeAutonomous();
			shooterControl.InitializeAutonomous();
			_poleVaultControl.initialize();
		} else {
			_driveControl.initializeHybrid();
			shooterControl.InitializeHybrid();
			_poleVaultControl.initialize();
		}
		while (IsEnabled() && IsAutonomous()) {
			GetWatchdog().Feed();
			dsLCD->Clear();
			if (!isHybrid) { //Run Autonomous
				dsLCD->PrintfLine(DriverStationLCD::kUser_Line1,
						"Autonomous Mode");
				//if (_driveControl.RunAuto()) {
					shooterControl.RunAuto();
				//}
//				if(_driveControl.RunAuto()){
//					_poleVaultControl.deploy();
//				}
			} else { //Run Hybrid
				dsLCD->PrintfLine(DriverStationLCD::kUser_Line1, "Hybrid Mode");
				shooterControl.Run();
				_driveControl.act();
				_poleVaultControl.act();
			}
			dsLCD->UpdateLCD();
			Wait(WAIT_TIME);
		}
		GetWatchdog().SetEnabled(false);
	}