示例#1
0
        public void ajouter_lien(Router A, double cout)
        {
            Lien lien  = new Lien(RouterID, A.RouterID, RouterNumID, A.RouterNumID, cout);
            Lien lien2 = new Lien(A.RouterID, RouterID, A.RouterNumID, RouterNumID, cout);

            ConnexionsRouter.Add(lien);
            ConnexionsRouter.Add(lien2);
        }
示例#2
0
        /***************************************
        *               METHODES
        ***************************************/
        public static void le_chemin_aleatoire(int source, int destination)
        {
            cheminAleatoire.Add(source);
            if (source != destination)
            {
                int b = 0;
                int c = 0;
                foreach (Lien lien in Machine.get_LesLiens())
                {
                    if (lien.get_extrem1() == Machine.get_LesRouter()[source].get_RouterID() || lien.get_extrem2() == Machine.get_LesRouter()[source].get_RouterID())
                    {
                        b++;
                    }
                }
                nbAlea = Alea.Next(b);

                foreach (Lien lien in Machine.get_LesLiens())
                {
                    if (lien.get_extrem1() == Machine.get_LesRouter()[source].get_RouterID() || lien.get_extrem2() == Machine.get_LesRouter()[source].get_RouterID())
                    {
                        if (c == nbAlea)
                        {
                            NextLien = lien;
                            c++;
                        }
                        else
                        {
                            c++;
                        }
                    }
                }
                if (NextLien.get_extrem1() == Machine.get_LesRouter()[source].get_RouterID())
                {
                    RouterSuivantID = NextLien.get_int_extrem2();
                }
                else
                {
                    RouterSuivantID = NextLien.get_int_extrem1();
                }
                if (RouterSuivantID != destination)
                {
                    le_chemin_aleatoire(RouterSuivantID, destination);
                }
                else
                {
                    cheminAleatoire.Add(RouterSuivantID);
                }
            }
            else
            {
                //
            }
        }
示例#3
0
 public static void ajouter_lien(Lien A)
 {
     LesLiens.Add(A);
 }
示例#4
0
 public void set_ComputerLink(Lien A)
 {
     ComputerLink = A;
 }
示例#5
0
 public void add_ConnexionsRouter(Lien A)
 {
     ConnexionsRouter.Add(A);
 }