Ejemplo n.º 1
0
        ///Sincronizzazione
        public void SwitchTraffic()
        {
            Strada stradaA = _strade[0];
            Strada stradaB = _strade[1];

            if (stradaA.StreetStatus == Semaforo.VERDE && stradaB.StreetStatus == Semaforo.ROSSO)
            {
                Switch(stradaA, stradaB);
            }
            else if (stradaA.StreetStatus == Semaforo.ROSSO && stradaB.StreetStatus == Semaforo.VERDE)
            {
                Switch(stradaB, stradaA);
            }
        }
Ejemplo n.º 2
0
        private void Switch(Strada setRed, Strada setGreen)
        {
            if (setRed.SetYellow())
            {
                PrintCurrentStatus();

                if (setRed.SetRed())
                {
                    PrintCurrentStatus();

                    if (setGreen.SetYellow())
                    {
                        PrintCurrentStatus();

                        setGreen.SetGreen();
                        PrintCurrentStatus();
                        System.Threading.Thread.Sleep(1000);
                    }
                }
            }
        }
Ejemplo n.º 3
0
 public ManagerIncrocio()
 {
     _strade[0] = new Strada("A", Semaforo.VERDE);
     _strade[1] = new Strada("B", Semaforo.ROSSO);
 }