//! Create from an XML node a FickProprieties. //! \param node The XML node //! \return A FickProprieties (descriptor of FickReaction) public FickProprieties loadFickProprieties(XmlNode node) { FickProprieties props = new FickProprieties(); foreach (XmlNode attr in node) { switch (attr.Name) { case "MediumId1": props.MediumId1 = Convert.ToInt32(attr.InnerText); break; case "MediumId2": props.MediumId2 = Convert.ToInt32(attr.InnerText); break; case "P": props.P = float.Parse(attr.InnerText.Replace(",", ".")); break; case "surface": props.surface = float.Parse(attr.InnerText.Replace(",", ".")); break; } } return props; }
public static IReaction buildFickReactionFromProps(FickProprieties props, LinkedList<Medium> mediums) { FickReaction reaction = new FickReaction(); Medium med1 = ReactionEngine.getMediumFromId(props.MediumId1, mediums); Medium med2 = ReactionEngine.getMediumFromId(props.MediumId2, mediums); if (med1 == null || med2 == null) { Debug.Log("failed to build FickReaction from FickProprieties beacause one or all the medium id don't exist"); return null; } reaction.setSurface(props.surface); reaction.setPermCoef(props.P); reaction.setMedium1(med1); reaction.setMedium2(med2); reaction.setEnergyCost(props.energyCost); return reaction; }