void TaskThreadProcess() { while (true) { switch (state) { case TaskFinDeMatchStates.Init: servoPositionsRequested = new Dictionary <ServoId, int>(); servoPositionsRequested.Add(ServoId.PorteDrapeau, (int)TaskDrapeauPositionsInit.Drapeau); OnHerkulexPositionRequest(servoPositionsRequested); state = TaskFinDeMatchStates.Attente; break; case TaskFinDeMatchStates.Attente: break; /**********************Ouverture drapeau**************************************/ case TaskFinDeMatchStates.FinDeMatch: OnPilotageVentouse(5, 0); OnPilotageVentouse(6, 0); OnPilotageVentouse(7, 0); state = TaskFinDeMatchStates.FinDeMatchAttente; parentManager.OnEnableMotors(false); servoPositionsRequested = new Dictionary <ServoId, int>(); servoPositionsRequested.Add(ServoId.PorteDrapeau, (int)TaskDrapeauPositionsOpen.Drapeau); OnHerkulexPositionRequest(servoPositionsRequested); break; case TaskFinDeMatchStates.FinDeMatchAttente: state = TaskFinDeMatchStates.Finished; break; /**********************Finished task**************************************/ case TaskFinDeMatchStates.Finished: isFinished = true; state = TaskFinDeMatchStates.Attente; break; } Thread.Sleep(10); } }
public void Start() { state = TaskFinDeMatchStates.FinDeMatch; isFinished = false; StopSw(); }
public void Pause() { state = TaskFinDeMatchStates.Attente; isFinished = false; StopSw(); }
public void Init() { state = TaskFinDeMatchStates.Init; isFinished = false; StopSw(); }