public Activite(string nom, Heure debut, Heure fin, string texteDescriptif) : this(nom) { _debut = debut; _fin = fin; _texteDescriptif = texteDescriptif; }
public Activite(string nom) { _nom = nom; _debut = new Heure (0,0); _fin = new Heure(0, 0); _texteDescriptif = ""; _gps = new Lieu(); _texteDescriptif = ""; _listAstronaute.Add (new Astronaute(0,"")); }
//Lecture XML et génération objets public void chargerXml(XmlDocument xmlDoc, Mission M) { XmlNodeList nodelistCalendrier = xmlDoc.GetElementsByTagName("Calendrier_Martien"); //On crée une liste de tous les éléments dans tout le document qui portent le nom de Calendrier_Martien CalendrierMartien c = new CalendrierMartien(); foreach (XmlNode nodeCalendrier in nodelistCalendrier) //Pour tout les noeuds présents dans notre liste d'élements (ici on a juste un élément) { c.Debut = DateTime.Parse(nodeCalendrier.SelectSingleNode("Début").InnerText); //La date de début du calendrier est égale à ce qui est contenu dans le seul noeud portant le nom début c.Fin = DateTime.Parse(nodeCalendrier.SelectSingleNode("Fin").InnerText); c.Last= DateTime.Parse(nodeCalendrier.SelectSingleNode("Last").InnerText); c.Day = int.Parse(nodeCalendrier.SelectSingleNode("Jour").InnerText); c.Heure = int.Parse(nodeCalendrier.SelectSingleNode("Heure").InnerText); c.Minute = int.Parse(nodeCalendrier.SelectSingleNode("Minute").InnerText); c.Seconde = int.Parse(nodeCalendrier.SelectSingleNode("Seconde").InnerText); XmlNodeList nodelistJours = nodeCalendrier.SelectNodes("Liste_Jour"); foreach (XmlNode nodeJour in nodelistJours) { XmlNodeList nodelistJour = nodeJour.SelectNodes("Jour"); foreach (XmlNode jour in nodelistJour) { string CompteRendu = ""; int num = 0; bool[] tabHoraires = new bool[148]; Jour j = new Jour(CompteRendu, num, tabHoraires); j.CompteRendu = jour.SelectSingleNode("Compte_Rendu").InnerText; j.Numero = int.Parse(jour.SelectSingleNode("Numéro").InnerText); j.Sortie = bool.Parse(jour.SelectSingleNode("Sortie").InnerText); List<Activite> listeActivites = new List<Activite>(); XmlNodeList nodelistActivite = jour.SelectNodes("Liste_Activité"); foreach (XmlNode nodeActivite in nodelistActivite) { XmlNodeList nodelisteActivite = nodeActivite.SelectNodes("Activité"); foreach (XmlNode Activite in nodelisteActivite) { Heure debut = new Heure(0, 0); Heure fin = new Heure(0, 0); Lieu gps = new Lieu(); List<Astronaute> listAstronaute = new List<Astronaute>(); Activite a = new Activite(""); a.Nom = Activite.SelectSingleNode("Nom").InnerText; debut.Heures = int.Parse(Activite.SelectSingleNode("Heure_Debut").InnerText); fin.Heures = int.Parse(Activite.SelectSingleNode("Heure_Fin").InnerText); debut.Minutes = int.Parse(Activite.SelectSingleNode("Minute_Debut").InnerText); fin.Minutes = int.Parse(Activite.SelectSingleNode("Minute_Fin").InnerText); a.Debut = new Heure(debut.Heures, debut.Minutes); a.Fin = new Heure(fin.Heures, fin.Minutes); gps = Lieu.Parse(Activite.SelectSingleNode("Lieu")); a.Gps = gps; List<Astronaute> listAstr = new List<Astronaute>(); XmlNodeList nodelistAstronaute = Activite.SelectNodes("Liste_Astronaute"); foreach (XmlNode nodeAstronaute in nodelistAstronaute) { string nomAst = ""; int id = 0; XmlNodeList nodeAstronautee = nodeAstronaute.SelectNodes("Astronaute"); foreach (XmlNode nodeAstro in nodeAstronautee) { id = int.Parse(nodeAstro.SelectSingleNode("Id").InnerText); nomAst = nodeAstro.SelectSingleNode("Nom").InnerText; Astronaute ast = new Astronaute(id, nomAst); listAstr.Add(ast); } } a.ListAstronaute = listAstr; a.TexteDescriptif = Activite.SelectSingleNode("Texte_Descriptif").InnerText; listeActivites.Add(a); } } j.ListeActivites = listeActivites; XmlNodeList nodelistTabHoraire = jour.SelectNodes("Tableau_Horaire"); foreach (XmlNode nodeListeLibre in nodelistTabHoraire) { XmlNodeList nodelistLibre = nodeListeLibre.SelectNodes("Libre"); int i = 0; foreach (XmlNode nodeLibre in nodelistLibre) { tabHoraires[i] = bool.Parse(nodeLibre.InnerText); i++; } } j.TabHoraires = tabHoraires; c.Jours.Add(j); } } } M.Calendar = c; }
public Activite(string nom, Heure debut, Heure fin, string texteDescriptif, List<Astronaute> listAst, Lieu lieu) : this(nom, debut, fin, texteDescriptif) { _listAstronaute = listAst; _gps = lieu; }