public Parameter GeefAantalMaandenParameter(AantalMaandenParameterEnum type, double constante, Vergelijking vergelijking) { if (!aantalMaandenParameters.ContainsKey(type)) { throw new ArgumentException("Het opgegeven parameterType is niet gevonden."); } Dictionary <Vergelijking, Dictionary <double, Parameter> > paramTypeDictionary = aantalMaandenParameters[type]; if (!paramTypeDictionary.ContainsKey(vergelijking)) { paramTypeDictionary.Add(vergelijking, new Dictionary <double, Parameter>()); } Dictionary <double, Parameter> vergelijkingTypeDictionary = paramTypeDictionary[vergelijking]; if (vergelijkingTypeDictionary.ContainsKey(constante)) { return(vergelijkingTypeDictionary[constante]); } Parameter c; if (type == AantalMaandenParameterEnum.aantalMaandenMetTemperatuur) { c = new AantalMaandenMetTemperatuurParameter(constante, vergelijking); } else { c = new AantalMaandenMetNeerslagParameter(constante, vergelijking); } vergelijkingTypeDictionary.Add(constante, c); return(vergelijkingTypeDictionary[constante]); }
public Parameter GeefAantalMaandenParameter(AantalMaandenParameterEnum type, double constante, Vergelijking vergelijking) { if (!aantalMaandenParameters.ContainsKey(type)) throw new ArgumentException("Het opgegeven parameterType is niet gevonden."); Dictionary<Vergelijking, Dictionary<double, Parameter>> paramTypeDictionary = aantalMaandenParameters[type]; if (!paramTypeDictionary.ContainsKey(vergelijking)) paramTypeDictionary.Add(vergelijking, new Dictionary<double, Parameter>()); Dictionary<double, Parameter> vergelijkingTypeDictionary = paramTypeDictionary[vergelijking]; if (vergelijkingTypeDictionary.ContainsKey(constante)) return vergelijkingTypeDictionary[constante]; Parameter c; if (type == AantalMaandenParameterEnum.aantalMaandenMetTemperatuur) c = new AantalMaandenMetTemperatuurParameter(constante, vergelijking); else c = new AantalMaandenMetNeerslagParameter(constante, vergelijking); vergelijkingTypeDictionary.Add(constante, c); return vergelijkingTypeDictionary[constante]; }