From: <bma...@us...> - 2008-08-31 13:22:21
|
Revision: 3855 http://fudaa.svn.sourceforge.net/fudaa/?rev=3855&view=rev Author: bmarchan Date: 2008-08-31 13:22:22 +0000 (Sun, 31 Aug 2008) Log Message: ----------- Probl?\195?\168me lors du merge depuis Br_FudaaModeleur_TR : Certains fichiers n'ont pas suivi. Remise dans leur forme originelle Modified Paths: -------------- trunk/fudaa_devel/dodico/src/org/fudaa/dodico/sinavi3/DResultatsSinavi3.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3AlgorithmeAttentesGenerales.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3AlgorithmeDureesParcours.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3AlgorithmeTOUTESAttentesTrajet.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3AlgorithmeTOUTESDureesParcours.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3GenereNoteHtml.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3ResultatGenerationBateaux.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3ResultatsAttenteGeneraleCategories.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3ResultatsAttenteGeneraleElement.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3ResultatsAttenteTrajet.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3TraduitHoraires.java trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sipor/SiporTraduitHoraires.java trunk/fudaa_devel/fudaa-distrib/mascaret/izpack/shortcutSpec.xml Added Paths: ----------- trunk/fudaa_devel/fudaa-distrib/mascaret/icons/fudaamascaret24.ico Removed Paths: ------------- trunk/fudaa_devel/fudaa-distrib/mascaret/icons/fudaamascaret.ico Modified: trunk/fudaa_devel/dodico/src/org/fudaa/dodico/sinavi3/DResultatsSinavi3.java =================================================================== --- trunk/fudaa_devel/dodico/src/org/fudaa/dodico/sinavi3/DResultatsSinavi3.java 2008-08-31 13:19:15 UTC (rev 3854) +++ trunk/fudaa_devel/dodico/src/org/fudaa/dodico/sinavi3/DResultatsSinavi3.java 2008-08-31 13:22:22 UTC (rev 3855) @@ -1,311 +1,206 @@ -/** - * @file DResultatsSinavi3.java - * @creation 1999-09-23 - * @modification $Date: 2007-11-23 11:31:39 $ - * @license GNU General Public License 2 - * @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne - * @mail de...@fu... - */ -package org.fudaa.dodico.sinavi3; -import java.io.*; -import java.util.*; -import java.util.Vector; -import org.fudaa.dodico.objet.*; -import org.fudaa.dodico.calcul.*; -import org.fudaa.dodico.fortran.FortranReader; -import org.fudaa.dodico.corba.sinavi3.*; -import com.memoire.fu.FuLog; -/** - * Permet d'acc\xE9der aux r\xE9sultats d'une simulation. - * - * @version $Revision: 1.1 $ $Date: 2007-11-23 11:31:39 $ by $Author: hadouxad $ - * @author Nicolas Chevalier - */ -public class DResultatsSinavi3 - extends DResultats - implements IResultatsSinavi3,IResultatsSinavi3Operations { - private String fichier_; - public DResultatsSinavi3() { - super(); - fichier_= ""; - } - public final Object clone() throws CloneNotSupportedException { - final DResultatsSinavi3 r= new DResultatsSinavi3(); - r.fichier(fichier_); - return r; - } - public String toString() { - return "DResultatsSinavi3(" + fichier_ + ")"; - } - public String fichier() { - return fichier_; - } - /** - * Mutateur de fihcier. Ajoute "_histo.dat" \xE0 _fichier. - * - * @param _fichier - */ - public void fichier(final String _fichier) { - fichier_= _fichier + /*"_histo.dat"*/".his"; - } - /** - * Pour acc\xE9der aux r\xE9sultats. - * - * @return r\xE9sultats - */ - public Sinavi3ResultatListeevenementsSimu litResultatsSinavi3() { - return litResultatsSinavi3(fichier()); - } - /** - * Lit un fichier de r\xE9sultats et renvoie une instance de SResultatsIterations - * correspondant aux donn\xE9es lues. - * - * @param nomFichier - * @return r\xE9sultats - */ - public static double arrondire2decimales(double val) - { - val=val*100; - val=(int)(val+0.5); - val=val/100.0; - return val; - } - - public static Sinavi3ResultatListeevenementsSimu litResultatsSinavi3(final String nomFichier) { - try { - FuLog.debug("Lecture de " + nomFichier); - - Sinavi3ResultatListeevenementsSimu listeResultats= new Sinavi3ResultatListeevenementsSimu(); - - //vecteur dynamique qui servira a stocker chaque navire en attendant de connaitrez le nombre exact de navires - ArrayList vecteurListe=new ArrayList(); - - //structure finale qui contiendra la totalit\xE9 des navires - FortranReader fr= new FortranReader(new FileReader(nomFichier)); - - try { - while (true) { - fr.readFields(); - - if (fr.getNumberOfFields() > 2) { - //recopiage des parametres dans le champs - - //allocation m\xE9moire pour les donn\xE9es d un anvire - Sinavi3ResultatsSimulation donneesNavire=new Sinavi3ResultatsSimulation(); - FuLog.debug("num cat: "+fr.intField(0)+"\n categorie: "+(fr.intField(1)-1)+"\n longueur: "+fr.doubleField(2)+"\n tonnage: "+fr.doubleField(3)+ "\n nb elements trajet: "+fr.intField(4)); - //recopiage des donn\xE9es du fichier dans la struture donneesNavire - donneesNavire.numero=fr.intField(0); - donneesNavire.categorie=fr.intField(1)-1; - donneesNavire.longueur=fr.doubleField(2); - donneesNavire.tonnage=fr.doubleField(3); - donneesNavire.NbElemtnsParcours=fr.intField(4); - //allocation memoire pour le tableau de trajet a partir du nombre d elements: - donneesNavire.tableauTrajet=new Sinavi3ResultatsDonneeTrajet[donneesNavire.NbElemtnsParcours]; - FuLog.debug("trajet: "); - //lecture de la liste ddu trajet du navire donn\xE9 - //int indiceDonnee=5; - for(int i=0;i<donneesNavire.NbElemtnsParcours;i++) - { - /* - FuLog.debug("\n element: "+fr.stringField(indiceDonnee)); - //allocation memoire pour un element du trajet: - donneesNavire.tableauTrajet[i]=new SiporResultatsDonneeTrajet(); - //donnees associ\xE9es \xE0 un \xE9l\xE9ment - String typeElement=fr.stringField(indiceDonnee++); - if(typeElement.equals("T") ||typeElement.equals("t")) - donneesNavire.tableauTrajet[i].typeElement=0; - if(typeElement.equals("C") ||typeElement.equals("c")) - donneesNavire.tableauTrajet[i].typeElement=1; - if(typeElement.equals("E") ||typeElement.equals("e")) - donneesNavire.tableauTrajet[i].typeElement=2; - if(typeElement.equals("Q") ||typeElement.equals("q")) - donneesNavire.tableauTrajet[i].typeElement=3; - - FuLog.debug("\n indice element: "+fr.intField(indiceDonnee)); - donneesNavire.tableauTrajet[i].indiceElement=fr.intField(indiceDonnee++)-1; - - FuLog.debug("\n heure entree: "+fr.doubleField(indiceDonnee)); - donneesNavire.tableauTrajet[i].heureEntree=fr.doubleField(indiceDonnee++); - - FuLog.debug("\n heure sortie: "+fr.doubleField(indiceDonnee)); - donneesNavire.tableauTrajet[i].heureSortie=fr.doubleField(indiceDonnee++); - - donneesNavire.tableauTrajet[i].acces=fr.doubleField(indiceDonnee++); - - FuLog.debug("\n attente mar\xE9e: "+fr.doubleField(indiceDonnee)); - donneesNavire.tableauTrajet[i].marees=fr.doubleField(indiceDonnee++); - - FuLog.debug("\n attente securite: "+fr.doubleField(indiceDonnee)); - donneesNavire.tableauTrajet[i].secu=fr.doubleField(indiceDonnee++); - - FuLog.debug("\n attente occupation: "+fr.doubleField(indiceDonnee)); - donneesNavire.tableauTrajet[i].occupation=fr.doubleField(indiceDonnee++); - - FuLog.debug("\n attente indisponibilit\xE9: "+fr.doubleField(indiceDonnee)); - donneesNavire.tableauTrajet[i].indispo=fr.doubleField(indiceDonnee++); - */ - - //-- Variante suite aux modifications du fichier historique --// - - //-- lecture de la ligne contenant l'\xE9l\xE9ment parcouru - fr.readFields(); - - //allocation memoire pour un element du trajet: - donneesNavire.tableauTrajet[i]=new Sinavi3ResultatsDonneeTrajet(); - //donnees associ\xE9es \xE0 un \xE9l\xE9ment - String typeElement=fr.stringField(0); - if(typeElement.equals("T") ||typeElement.equals("t")) - donneesNavire.tableauTrajet[i].typeElement=0; - if(typeElement.equals("C") ||typeElement.equals("c")) - donneesNavire.tableauTrajet[i].typeElement=1; - if(typeElement.equals("E") ||typeElement.equals("e")) - donneesNavire.tableauTrajet[i].typeElement=2; - if(typeElement.equals("Q") ||typeElement.equals("q")) - donneesNavire.tableauTrajet[i].typeElement=3; - - FuLog.debug("\n indice element: "+fr.intField(1)); - donneesNavire.tableauTrajet[i].indiceElement=fr.intField(1)-1; - - FuLog.debug("\n heure entree: "+fr.doubleField(2)); - donneesNavire.tableauTrajet[i].heureEntree=fr.doubleField(2); - - FuLog.debug("\n heure sortie: "+fr.doubleField(3)); - donneesNavire.tableauTrajet[i].heureSortie=fr.doubleField(3); - - donneesNavire.tableauTrajet[i].acces=fr.doubleField(4); - - FuLog.debug("\n attente mar\xE9e: "+fr.doubleField(5)); - donneesNavire.tableauTrajet[i].marees=fr.doubleField(5); - - FuLog.debug("\n attente securite: "+fr.doubleField(6)); - donneesNavire.tableauTrajet[i].secu=fr.doubleField(6); - - FuLog.debug("\n attente occupation: "+fr.doubleField(7)); - donneesNavire.tableauTrajet[i].occupation=fr.doubleField(7); - - FuLog.debug("\n attente indisponibilit\xE9: "+fr.doubleField(7)); - donneesNavire.tableauTrajet[i].indispo=fr.doubleField(7); - - - - } - - //ajout des don\xE9esnavire dans le vecteur - vecteurListe.add(donneesNavire); - - } - else - { - //on quitte - //on recopie le contenue ainsi que le nombre de navire du vecteur dans al structure finale que lon renvoie ensuite - - //on connais le nombre de navires: il s agit du nombre d elements du vecteur - listeResultats.nombreNavires=vecteurListe.size(); - - //allocation memoire du tableau de navires - listeResultats.listeEvenements=new Sinavi3ResultatsSimulation[vecteurListe.size()]; - - for(int i=0;i<vecteurListe.size();i++) - { - listeResultats.listeEvenements[i]=(Sinavi3ResultatsSimulation) vecteurListe.get(i); - } - - - //renvoie de la structure finale: - return listeResultats; - - } - } - } - catch (final EOFException e) { - FuLog.debug("fin de fichier"); -// on connais le nombre de navires: il s agit du nombre d elements du vecteur - listeResultats.nombreNavires=vecteurListe.size(); - - //allocation memoire du tableau de navires - listeResultats.listeEvenements=new Sinavi3ResultatsSimulation[vecteurListe.size()]; - - for(int i=0;i<vecteurListe.size();i++) - { - listeResultats.listeEvenements[i]=(Sinavi3ResultatsSimulation) vecteurListe.get(i); - } - - - //renvoie de la structure finale: - return listeResultats; - - } - - /* - final Vector iterations= new Vector(); - Vector iteration= new Vector(); - final int[] fmt= - { 5, 3, 10, 10, 10, 10, 3, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 }; - try { - while (true) { - fr.readFields(fmt); - if (!fr.stringField(0).equals(">") ) { - // Copie d'une ligne correspondant \xE0 un navire dans une instance de SResultatsBateauGenere - final SResultatsBateauGenere bateau= new SResultatsBateauGenere(); - bateau.numeroBateau= fr.intField(0); - bateau.numeroCategorie= fr.intField(1); - bateau.heureGeneration= fr.intField(2); - bateau.heureAccesChenal= fr.intField(3); - bateau.heureAccesEclusePourArrivee= fr.intField(4); - bateau.heureSortieEclusePourArrivee= fr.intField(5); - bateau.numeroQuai= fr.intField(6); - bateau.heureAccesQuai= fr.intField(7); - bateau.heureDepartQuai= fr.intField(8); - bateau.heureAccesEclusePourDepart= fr.intField(9); - bateau.heureSortieEclusePourDepart= fr.intField(10); - bateau.heureSortieRade= fr.intField(11); - bateau.attenteTotale= fr.intField(12); - bateau.attenteQuai= fr.intField(13); - bateau.attenteEcluse= fr.intField(14); - bateau.attenteMaree= fr.intField(15); - bateau.attenteCreneau= fr.intField(16); - iteration.add(bateau); - } else { - // C'est le separateur d'iteration qui a ete lu - // Copie du vecteur iteration dans une structure SResultatsIteration - final SResultatsIteration resultatsIteration= - new SResultatsIteration( - (new SResultatsBateauGenere[iteration.size()])); - for (int j= 0; j < iteration.size(); j++) { - resultatsIteration.resultatsIteration[j]= - (SResultatsBateauGenere)iteration.elementAt(j); - } - iteration= new Vector(); - iterations.add(resultatsIteration); - } - } - } catch (final EOFException e) { - // Execution a la fin du fichier - // Copie du dernier vecteur iteration dans une structure SResultatsIteration - final SResultatsIteration resultatsIteration= - new SResultatsIteration( - (new SResultatsBateauGenere[iteration.size()])); - for (int j= 0; j < iteration.size(); j++) { - resultatsIteration.resultatsIteration[j]= - (SResultatsBateauGenere)iteration.elementAt(j); - } - System.out.println( - resultatsIteration.resultatsIteration.length + "bateaux"); - iterations.add(resultatsIteration); - // Copie du vecteur iterations dans une instance de SResultatsIterations - final SResultatsIterations resultatsIterations= - new SResultatsIterations(new SResultatsIteration[iterations.size()]); - for (int j= 0; j < iterations.size(); j++) { - resultatsIterations.resultatsIterations[j]= - (SResultatsIteration)iterations.elementAt(j); - } - fr= null; - return resultatsIterations; - } - */ - } catch (final Exception ex) { - CDodico.exception(DResultatsSinavi3.class, ex); - } - return null; - } -} +/** + * @file DResultatsSinavi3.java + * @creation 1999-09-23 + * @modification $Date: 2008-01-25 14:02:01 $ + * @license GNU General Public License 2 + * @copyright (c)1998-2001 CETMEF 2 bd Gambetta F-60231 Compiegne + * @mail de...@fu... + */ +package org.fudaa.dodico.sinavi3; +import java.io.*; +import java.util.*; +import java.util.Vector; +import org.fudaa.dodico.objet.*; +import org.fudaa.dodico.calcul.*; +import org.fudaa.dodico.fortran.FortranReader; +import org.fudaa.dodico.corba.sinavi3.*; +import com.memoire.fu.FuLog; +/** + * Permet d'acc\xE9der aux r\xE9sultats d'une simulation. + * + * @version $Revision: 1.4 $ $Date: 2008-08-13 11:00:00 $ by $Author: fargeix $ + * @author Nicolas Chevalier + */ +public class DResultatsSinavi3 + extends DResultats + implements IResultatsSinavi3,IResultatsSinavi3Operations { + private String fichier_; + public DResultatsSinavi3() { + super(); + fichier_= ""; + } + public final Object clone() throws CloneNotSupportedException { + final DResultatsSinavi3 r= new DResultatsSinavi3(); + r.fichier(fichier_); + return r; + } + public String toString() { + return "DResultatsSinavi3(" + fichier_ + ")"; + } + public String fichier() { + return fichier_; + } + /** + * Mutateur de fihcier. Ajoute "_histo.dat" \xE0 _fichier. + * + * @param _fichier + */ + public void fichier(final String _fichier) { + fichier_= _fichier + /*"_histo.dat"*/".his"; + } + /** + * Pour acc\xE9der aux r\xE9sultats. + * + * @return r\xE9sultats + */ + public Sinavi3ResultatListeevenementsSimu litResultatsSinavi3() { + return litResultatsSinavi3(fichier()); + } + /** + * Lit un fichier de r\xE9sultats et renvoie une instance de SResultatsIterations + * correspondant aux donn\xE9es lues. + * + * @param nomFichier + * @return r\xE9sultats + */ + public static double arrondire2decimales(double val) + { + val=val*100; + val=(int)(val+0.5); + val=val/100.0; + return val; + } + + public static Sinavi3ResultatListeevenementsSimu litResultatsSinavi3(final String nomFichier) { + try { + FuLog.debug("Lecture de " + nomFichier); + + Sinavi3ResultatListeevenementsSimu listeResultats= new Sinavi3ResultatListeevenementsSimu(); + + //vecteur dynamique qui servira a stocker chaque navire en attendant de connaitrez le nombre exact de navires + ArrayList vecteurListe=new ArrayList(); + + //structure finale qui contiendra la totalit\xE9 des navires + FortranReader fr= new FortranReader(new FileReader(nomFichier)); + + try { + while (true) { + fr.readFields(); + + if (fr.getNumberOfFields() > 2) { + //recopiage des parametres dans le champs + + //allocation m\xE9moire pour les donn\xE9es d un anvire + Sinavi3ResultatsSimulation donneesNavire=new Sinavi3ResultatsSimulation(); + FuLog.debug("num cat: "+fr.intField(0)+"\n categorie: "+(fr.intField(1)-1)+"\n longueur: "+fr.stringField(2)+"\n nb elements trajet: "+fr.intField(4)); + //recopiage des donn\xE9es du fichier dans la struture donneesNavire + donneesNavire.numero=fr.intField(0); + donneesNavire.categorie=fr.intField(1)-1; + String typeSens=fr.stringField(2); + if(typeSens.equals("A")) + donneesNavire.sens=0; + else + donneesNavire.sens=1; + + donneesNavire.NbElemtnsParcours=fr.intField(3); + //allocation memoire pour le tableau de trajet a partir du nombre d elements: + donneesNavire.tableauTrajet=new Sinavi3ResultatsDonneeTrajet[donneesNavire.NbElemtnsParcours]; + FuLog.debug("trajet: "); + //lecture de la liste ddu trajet du navire donn\xE9 + //int indiceDonnee=5; + for(int i=0;i<donneesNavire.NbElemtnsParcours;i++) + { + + + //-- Variante suite aux modifications du fichier historique --// + + //-- lecture de la ligne contenant l'\xE9l\xE9ment parcouru + fr.readFields(); + + //allocation memoire pour un element du trajet: + donneesNavire.tableauTrajet[i]=new Sinavi3ResultatsDonneeTrajet(); + //donnees associ\xE9es \xE0 un \xE9l\xE9ment + String typeElement=fr.stringField(0); + if(typeElement.equals("T") ||typeElement.equals("t")) + donneesNavire.tableauTrajet[i].typeElement=0; + else + donneesNavire.tableauTrajet[i].typeElement=1; + + FuLog.debug("\n indice element: "+fr.intField(1)); + donneesNavire.tableauTrajet[i].indiceElement=fr.intField(1)-1; + + //--Horaires et attentes sont en secondes, on les traduit donc en minutes (adaptation sipor) --// + FuLog.debug("\n heure entree: "+fr.doubleField(2)); + donneesNavire.tableauTrajet[i].heureEntree=fr.doubleField(2);///60.0; + + FuLog.debug("\n heure sortie: "+fr.doubleField(3)); + donneesNavire.tableauTrajet[i].heureSortie=fr.doubleField(3);///60.0; + + donneesNavire.tableauTrajet[i].acces=fr.doubleField(4);///60.0; + + FuLog.debug("\n attente securite: "+fr.doubleField(5)); + donneesNavire.tableauTrajet[i].secu=fr.doubleField(5);///60.0; + + FuLog.debug("\n attente occupation: "+fr.doubleField(6)); + donneesNavire.tableauTrajet[i].occupation=fr.doubleField(6);///60.0; + + FuLog.debug("\n attente indisponibilit\xE9: "+fr.doubleField(7)); + donneesNavire.tableauTrajet[i].indispo=fr.doubleField(7);///60.0; + + + + } + + //ajout des don\xE9esnavire dans le vecteur + vecteurListe.add(donneesNavire); + + } + else + { + //on quitte + //on recopie le contenue ainsi que le nombre de navire du vecteur dans al structure finale que lon renvoie ensuite + + //on connais le nombre de navires: il s agit du nombre d elements du vecteur + listeResultats.nombreNavires=vecteurListe.size(); + + //allocation memoire du tableau de navires + listeResultats.listeEvenements=new Sinavi3ResultatsSimulation[vecteurListe.size()]; + + for(int i=0;i<vecteurListe.size();i++) + { + listeResultats.listeEvenements[i]=(Sinavi3ResultatsSimulation) vecteurListe.get(i); + } + + + //renvoie de la structure finale: + return listeResultats; + + } + } + } + catch (final EOFException e) { + FuLog.debug("fin de fichier"); +// on connais le nombre de navires: il s agit du nombre d elements du vecteur + listeResultats.nombreNavires=vecteurListe.size(); + + //allocation memoire du tableau de navires + listeResultats.listeEvenements=new Sinavi3ResultatsSimulation[vecteurListe.size()]; + + for(int i=0;i<vecteurListe.size();i++) + { + listeResultats.listeEvenements[i]=(Sinavi3ResultatsSimulation) vecteurListe.get(i); + } + + + //renvoie de la structure finale: + return listeResultats; + + } + + + } catch (final Exception ex) { + CDodico.exception(DResultatsSinavi3.class, ex); + } + return null; + } +} Modified: trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3AlgorithmeAttentesGenerales.java =================================================================== --- trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3AlgorithmeAttentesGenerales.java 2008-08-31 13:19:15 UTC (rev 3854) +++ trunk/fudaa_devel/fudaa/src/org/fudaa/fudaa/sinavi3/Sinavi3AlgorithmeAttentesGenerales.java 2008-08-31 13:22:22 UTC (rev 3855) @@ -16,8 +16,7 @@ */ public static void CalculApresSImu(final Sinavi3DataSimulation donnees_) { /* - * rangements des diff\xE9rents type d'\xE9l\xE9ment dans le tableau: indiceType == 0 =>"chenal" indiceType == 1 =>"cercle" - * indiceType == 2 =>"ecluse" indiceType == 3 => "quai" + * rangements des diff\xE9rents type d'\xE9l\xE9ment dans le tableau: indiceType == 0 =>"chenal" indiceType == 1 =>"ecluse" */ /* @@ -30,7 +29,7 @@ int compteurElementsAttente; boolean trouve; /******************************************************************************************************************* - * CALCUL DES ATTENTES DANS LE SENS ENTRANT + * CALCUL DES ATTENTES DANS LE SENS AVALANT ******************************************************************************************************************/ // allocation de m\xE9moire pour autant d elements qu il y a eu de saisies resultats.AttentesTousElementsToutesCategoriesSens1 = new SParametresResultatsAttente[ donnees_.listeEcluse_.listeEcluses_.size() @@ -89,6 +88,8 @@ // cat\xE9gorie for (int k = 0; k < donnees_.listeResultatsSimu_.nombreNavires; k++) { + if(donnees_.listeResultatsSimu_.listeEvenements[k].sens==0){ //-- test si sens avalant --// + // on r\xE9cup\xE8re la categorie associee au navire: final int n = donnees_.listeResultatsSimu_.listeEvenements[k].categorie; //resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente].tableauAttenteCategories[n].nombreNaviresTotal++; @@ -96,12 +97,7 @@ trouve = false; for (int e = 0; e < donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours && !trouve; e++) { // si l'\xE9l\xE9ment du trajet est equivalent a celui de l'\xE9l\xE9ment recherch\xE9 - if(donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 3) - { - //-- On a pas trouv\xE9 l'\xE9l\xE9ment en entrant car on est deja arriv\xE9 au quai: on quitte donc la boucle --// - trouve=true; - } - else + if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 0 && donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].indiceElement == i) { trouve = true; @@ -213,7 +209,8 @@ } } - } + }//fin test sens avalant + }//fin de boucle historique for (int n = 0; n < donnees_.listeBateaux_.listeNavires_.size(); n++) { if (resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini == 9999999) { @@ -244,8 +241,8 @@ // ecluse for (int i = 0; i < donnees_.listeEcluse_.listeEcluses_.size(); i++) { resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente] = new SParametresResultatsAttente(); - // type element: il s agit d un quai donc 3 - resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente].typeElement = 2; + // type element: il s agit d une ecluse donc 1 + resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente].typeElement = 1; resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente].indiceElement = i; resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente].tableauAttenteCategories = new SParametresResultatsAttenteCategorie[donnees_.listeBateaux_.listeNavires_ .size()]; @@ -289,6 +286,7 @@ // cat\xE9gorie for (int k = 0; k < donnees_.listeResultatsSimu_.nombreNavires; k++) { + if(donnees_.listeResultatsSimu_.listeEvenements[k].sens==0){ //-- test si sens avalant --// // on r\xE9cup\xE8re la categorie associee au navire: final int n = donnees_.listeResultatsSimu_.listeEvenements[k].categorie; //resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente].tableauAttenteCategories[n].nombreNaviresTotal++; @@ -296,13 +294,7 @@ // pour chaque element du trajet du navire k for (int e = 0; e < donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours && !trouve; e++) { // si l'\xE9l\xE9ment du trajet est equivalent a celui de l'\xE9l\xE9ment recherch\xE9 - if(donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 3) - { - //-- On a pas trouv\xE9 l'\xE9l\xE9ment en entrant car on est deja arriv\xE9 au quai: on quitte donc la boucle --// - trouve=true; - } - else - if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 2 + if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 1 && donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].indiceElement == i) { trouve = true; resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente].tableauAttenteCategories[n].nombreNaviresTotal++; @@ -413,6 +405,7 @@ } } + }//fin boucle historique for (int n = 0; n < donnees_.listeBateaux_.listeNavires_.size(); n++) { if (resultats.AttentesTousElementsToutesCategoriesSens1[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini == 9999999) { @@ -439,7 +432,7 @@ } /******************************************************************************************************************* - * CALCUL DES ATTENTES DANS LE SENS SORTANT + * CALCUL DES ATTENTES DANS LE SENS MONTANT ******************************************************************************************************************/ // allocation de m\xE9moire pour autant d elements qu il y a eu de saisies resultats.AttentesTousElementsToutesCategoriesSens2 = new SParametresResultatsAttente[ donnees_.listeEcluse_.listeEcluses_.size() @@ -496,20 +489,15 @@ // cat\xE9gorie for (int k = 0; k < donnees_.listeResultatsSimu_.nombreNavires; k++) { + if(donnees_.listeResultatsSimu_.listeEvenements[k].sens==1){ //-- test si sens avalant --// // on r\xE9cup\xE8re la categorie associee au navire: final int n = donnees_.listeResultatsSimu_.listeEvenements[k].categorie; //resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].tableauAttenteCategories[n].nombreNaviresTotal++; // pour chaque element du trajet du navire k des qu on trouve el premeir element on se retire trouve = false; - for (int e = donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours - 1; e >= 0 && !trouve; e--) { + for (int e =0; e<donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours && !trouve; e++) { // si l'\xE9l\xE9ment du trajet est equivalent a celui de l'\xE9l\xE9ment recherch\xE9 - if(donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 3) - { - //-- On a pas trouv\xE9 l'\xE9l\xE9ment en entrant car on est deja arriv\xE9 au quai: on quitte donc la boucle --// - trouve=true; - } - else - if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 0 + if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 0 && donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].indiceElement == i) { trouve = true; resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].tableauAttenteCategories[n].nombreNaviresTotal++; @@ -619,7 +607,8 @@ } } - } + } + }//fin historique boucle for (int n = 0; n < donnees_.listeBateaux_.listeNavires_.size(); n++) { if (resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini == 9999999) { @@ -651,7 +640,7 @@ for (int i = 0; i < donnees_.listeEcluse_.listeEcluses_.size(); i++) { resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente] = new SParametresResultatsAttente(); // type element: il s agit d un quai donc 3 - resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].typeElement = 2; + resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].typeElement = 1; resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].indiceElement = i; resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].tableauAttenteCategories = new SParametresResultatsAttenteCategorie[donnees_.listeBateaux_.listeNavires_ .size()]; @@ -695,20 +684,15 @@ // cat\xE9gorie for (int k = 0; k < donnees_.listeResultatsSimu_.nombreNavires; k++) { + if(donnees_.listeResultatsSimu_.listeEvenements[k].sens==1){ //-- test si sens avalant --// // on r\xE9cup\xE8re la categorie associee au navire: final int n = donnees_.listeResultatsSimu_.listeEvenements[k].categorie; //resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].tableauAttenteCategories[n].nombreNaviresTotal++; trouve = false; // pour chaque element du trajet du navire k - for (int e = donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours - 1; e >= 0 && !trouve; e--) { - if(donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 3) - { - //-- On a pas trouv\xE9 l'\xE9l\xE9ment en entrant car on est deja arriv\xE9 au quai: on quitte donc la boucle --// - trouve=true; - } - else + for (int e =0; e<donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours&& !trouve; e++) { // si l'\xE9l\xE9ment du trajet est equivalent a celui de l'\xE9l\xE9ment recherch\xE9 - if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 2 + if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 1 && donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].indiceElement == i) { trouve = true; resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].tableauAttenteCategories[n].nombreNaviresTotal++; @@ -817,8 +801,8 @@ } } - } + }//fin boucle historique for (int n = 0; n < donnees_.listeBateaux_.listeNavires_.size(); n++) { if (resultats.AttentesTousElementsToutesCategoriesSens2[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini == 9999999) { @@ -845,452 +829,9 @@ } - /******************************************************************************************************************* - * CALCUL DES ATTENTES DANS LES 2 SENS - ******************************************************************************************************************/ - // allocation de m\xE9moire pour autant d elements qu il y a eu de saisies - resultats.AttentesTousElementsToutesCategoriesLes2Sens = new SParametresResultatsAttente[donnees_.listeEcluse_.listeEcluses_.size() - + donnees_.listeBief_.listeBiefs_.size()]; - - compteurElementsAttente = 0; - trouve = false; - - // chenal - for (int i = 0; i < donnees_.listeBief_.listeBiefs_.size(); i++) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente] = new SParametresResultatsAttente(); - // type element: il s agit d un quai donc 3 - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].typeElement = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].indiceElement = i; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories = new SParametresResultatsAttenteCategorie[donnees_.listeBateaux_.listeNavires_ - .size()]; - // initialisation de tous les parametres d'attente - for (int k = 0; k < donnees_.listeBateaux_.listeNavires_.size(); k++) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k] = new SParametresResultatsAttenteCategorie(); - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nombreNaviresTotal = 0; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteAccesTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttenteAcces = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteAccesMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteAccesMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteMareeTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttenteMaree = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteMareeMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteMareeMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteSecuTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttenteSecu = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteSecuMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteSecuMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteOccupTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAtenteOccup = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteOccupMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteOccupMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attentePanneTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttentePanne = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attentePanneMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attentePanneMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteMegaTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttenteTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteTotaleMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteTotaleMini = 9999999; - - } - // boucle sur l historique et pour chaque ligne, on remplit les donn\xE9es dans la bonne case grace a l indice de - // cat\xE9gorie - - for (int k = 0; k < donnees_.listeResultatsSimu_.nombreNavires; k++) { - // on r\xE9cup\xE8re la categorie associee au navire: - final int n = donnees_.listeResultatsSimu_.listeEvenements[k].categorie; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nombreNaviresTotal++; - // pour chaque element du trajet du navire k des qu on trouve el premeir element on se retire - trouve = false; - for (int e = 0; e < donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours && !trouve; e++) { - // si l'\xE9l\xE9ment du trajet est equivalent a celui de l'\xE9l\xE9ment recherch\xE9 - if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 0 - && donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].indiceElement == i) { - trouve = true; - - int e2=-1; - boolean trouve2=false; - for(int z=e+1;z<donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours && !trouve2;z++) - if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[z].typeElement == 0 - && donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[z].indiceElement == i) { - e2=z; - trouve=true; - } - //on comptabilise les diff\xE9rents temps d'attente - // attentes d'acces - // attente totale d'acces - double attente = donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].acces; - if(e2!=-1) - attente+= donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].acces; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesTotale += attente; - // on incremente nb navires ayant attendu l'acces si le temps d'acces est non nul: - if (attente != 0) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nbNaviresAttenteAcces++; - } - // on teste si l'attente est minimale ou maximale: - if (attente > resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMaxi) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMaxi = attente; - } - if (attente < resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini = attente; - } - - // attentes de marees - // attente totale de marees - attente = donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].marees; - if(e2!=-1) - attente+= donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].marees; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteMareeTotale += attente; - // on incremente nb navires ayant attendu l'Maree si le temps d'Maree est non nul: - if (attente != 0) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nbNaviresAttenteMaree++; - } - // on teste si l'attente est minimale ou maximale: - if (attente > resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteMareeMaxi) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteMareeMaxi = attente; - } - if (attente < resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteMareeMini) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteMareeMini = attente; - } - - // attentes d'Secu - // attente totale d'Secu - attente = donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].secu; - if(e2!=-1) - attente+= donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].secu; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteSecuTotale += attente; - // on incremente nb navires ayant attendu l'Secu si le temps d'Secu est non nul: - if (attente != 0) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nbNaviresAttenteSecu++; - } - // on teste si l'attente est minimale ou maximale: - if (attente > resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteSecuMaxi) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteSecuMaxi = attente; - } - if (attente < resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteSecuMini) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteSecuMini = attente; - } - - // attentes d'Occup - // attente totale d'Occup - attente = donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].occupation; - if(e2!=-1) - attente+= donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].occupation; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteOccupTotale += attente; - // on incremente nb navires ayant attendu l'Occup si le temps d'Occup est non nul: - if (attente != 0) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nbNaviresAtenteOccup++; - } - // on teste si l'attente est minimale ou maximale: - if (attente > resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteOccupMaxi) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteOccupMaxi = attente; - } - if (attente < resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteOccupMini) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteOccupMini = attente; - } - - // attentes d'Panne - // attente totale d'Panne - attente = donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].indispo; - if(e2!=-1) - attente+= donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].indispo; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attentePanneTotale += attente; - // on incremente nb navires ayant attendu l'Panne si le temps d'Panne est non nul: - if (attente != 0) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nbNaviresAttentePanne++; - } - // on teste si l'attente est minimale ou maximale: - if (attente > resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attentePanneMaxi) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attentePanneMaxi = attente; - } - if (attente < resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attentePanneMini) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attentePanneMini = attente; - } - - // attentes d'totale - // attente totale d'acces - attente = donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].acces - + donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].marees - + donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].indispo - + donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].occupation - + donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].secu; - if(e2!=-1) - attente+= donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].acces - + donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].marees - + donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].indispo - + donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].occupation - + donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].secu; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteMegaTotale += attente; - // on incremente nb navires ayant attendu l'acces si le temps d'acces est non nul: - if (attente != 0) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nbNaviresAttenteTotale++; - } - // on teste si l'attente est minimale ou maximale: - if (attente > resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteTotaleMaxi) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteTotaleMaxi = attente; - } - if (attente < resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteTotaleMini) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteTotaleMini = attente; - } - - } - } - - } - - for (int n = 0; n < donnees_.listeBateaux_.listeNavires_.size(); n++) { - if (resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini == 9999999) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini = 0; - } - if (resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteMareeMini == 9999999) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteMareeMini = 0; - } - if (resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteSecuMini == 9999999) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteSecuMini = 0; - } - if (resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteOccupMini == 9999999) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteOccupMini = 0; - } - if (resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attentePanneMini == 9999999) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attentePanneMini = 0; - } - if (resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteTotaleMini == 9999999) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteTotaleMini = 0; - } - } - // incremente l element - compteurElementsAttente++; - } - - - // ecluse - for (int i = 0; i < donnees_.listeEcluse_.listeEcluses_.size(); i++) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente] = new SParametresResultatsAttente(); - // type element: il s agit d un quai donc 3 - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].typeElement = 2; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].indiceElement = i; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories = new SParametresResultatsAttenteCategorie[donnees_.listeBateaux_.listeNavires_ - .size()]; - // initialisation de tous les parametres d'attente - for (int k = 0; k < donnees_.listeBateaux_.listeNavires_.size(); k++) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k] = new SParametresResultatsAttenteCategorie(); - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nombreNaviresTotal = 0; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteAccesTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttenteAcces = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteAccesMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteAccesMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteMareeTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttenteMaree = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteMareeMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteMareeMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteSecuTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttenteSecu = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteSecuMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteSecuMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteOccupTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAtenteOccup = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteOccupMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteOccupMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attentePanneTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttentePanne = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attentePanneMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attentePanneMini = 9999999; - - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteMegaTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].nbNaviresAttenteTotale = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteTotaleMaxi = 0; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[k].attenteTotaleMini = 9999999; - - } - // boucle sur l historique et pour chaque ligne, on remplit les donn\xE9es dans la bonne case grace a l indice de - // cat\xE9gorie - - for (int k = 0; k < donnees_.listeResultatsSimu_.nombreNavires; k++) { - // on r\xE9cup\xE8re la categorie associee au navire: - final int n = donnees_.listeResultatsSimu_.listeEvenements[k].categorie; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nombreNaviresTotal++; - // pour chaque element du trajet du navire k des qu on trouve el premeir element on se retire - trouve = false; - for (int e = 0; e < donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours && !trouve; e++) { - // si l'\xE9l\xE9ment du trajet est equivalent a celui de l'\xE9l\xE9ment recherch\xE9 - if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].typeElement == 2 - && donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].indiceElement == i) { - trouve = true; - - - int e2=-1; - boolean trouve2=false; - for(int z=e+1;z<donnees_.listeResultatsSimu_.listeEvenements[k].NbElemtnsParcours && !trouve2;z++) - if (donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[z].typeElement == 2 - && donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[z].indiceElement == i) { - e2=z; - trouve=true; - } - // on comptabilise les diff\xE9rents temps d'attente - - // attentes d'acces - // attente totale d'acces - double attente = donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].acces; - if(e2!=-1) - attente += donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].acces; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesTotale += attente; - // on incremente nb navires ayant attendu l'acces si le temps d'acces est non nul: - if (attente != 0) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nbNaviresAttenteAcces++; - } - // on teste si l'attente est minimale ou maximale: - if (attente > resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMaxi) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMaxi = attente; - } - if (attente < resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteAccesMini = attente; - } - - // attentes de marees - // attente totale de marees - attente = donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e].marees; - if(e2!=-1) - attente += donnees_.listeResultatsSimu_.listeEvenements[k].tableauTrajet[e2].marees; - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attenteMareeTotale += attente; - // on incremente nb navires ayant attendu l'Maree si le temps d'Maree est non nul: - if (attente != 0) { - resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].nbNaviresAttenteMaree++; - } - // on teste si l'attente est minimale ou maximale: - if (attente > resultats.AttentesTousElementsToutesCategoriesLes2Sens[compteurElementsAttente].tableauAttenteCategories[n].attente... [truncated message content] |