public ConcentrationNode CreateNewConcentrationNode(string name) { foreach (Node n in NodeList) { if (n.GetName == name) { Console.WriteLine("Le noeud nommé {0} existe déjà. Entrez un nouveau nom :", name); string newName = Console.ReadLine(); return(CreateNewConcentrationNode(newName)); } } ConcentrationNode NewConcentrationNode = new ConcentrationNode(name); NodeList.Add(NewConcentrationNode); LineList.Add(NewConcentrationNode.GetOutputLine); PowerPlant shop = new PurchaseAbroad("shop_" + name, market); NewConcentrationNode.AddInputLineToList(shop.GetOutPutLine); shop.GetOutPutLine.SetOutputNode(NewConcentrationNode); shop.GetOutPutLine.SetIsMarketLine(true); return(NewConcentrationNode); }
// Connexion :: ConcentrationNode -> ConcentrationNode public void ConnectConcentrationToConcentrationNode(ConcentrationNode amontNode, ConcentrationNode avalNode) { Line ConnexionLine = amontNode.GetOutputLine; avalNode.AddInputLineToList(ConnexionLine); ConnexionLine.SetInputNode(amontNode); ConnexionLine.SetOutputNode(avalNode); }
// Connexion :: DistributionNode -> ConcentrationNode public void ConnectDistributionToConcentrationNode(string ConnexionLineName, DistributionNode DistributionNode, ConcentrationNode ConcentrationNode) { foreach (Line l in LineList) { if (l.GetName == ConnexionLineName) { Console.WriteLine("Le noeud nommé {0} existe déjà. Entrez un nouveau nom :", ConnexionLineName); string newName = Console.ReadLine(); ConnectDistributionToConcentrationNode(newName, DistributionNode, ConcentrationNode); break; } } // creation d'une nouvelle ligne Line ConnexionLine = new Line(ConnexionLineName); LineList.Add(ConnexionLine); if (DistributionNode.GetHasMarket) { ConnexionLine.SetIsMarketLine(true); } //MarketList.Add(DistributionNode.GetMyMarket); } ConcentrationNode.AddInputLineToList(ConnexionLine); DistributionNode.AddOutputLineToList(ConnexionLine); ConnexionLine.SetInputNode(DistributionNode); ConnexionLine.SetOutputNode(ConcentrationNode); if (DistributionNode.GetInputLine.GetIsPowerPlantLine) { Line BatteryLine = DistributionNode.GetInputLine.GetMyPowerPlant.GetMyBattery.GetOutputLine; BatteryLine.SetMyBattery(DistributionNode.GetInputLine.GetMyPowerPlant.GetMyBattery); LineList.Add(BatteryLine); ConcentrationNode.AddInputLineToList(BatteryLine); BatteryLine.SetOutputNode(ConcentrationNode); } }