protected override BaseInput NewInputSpaceTime(string engineVariable, string description, OpenMI.Standard.IInputExchangeItem input1, Utilities.Standard1.ExchangeItemV1ModelXml v1Model, int elementCount) { var input = new InputSpaceTimeUserVariables( new Identity(engineVariable, engineVariable, description), this, new Quantity(input1.Quantity, typeof(double), -999.999), ConvertElementSet(input1.ElementSet, v1Model), engineVariable, -999.999, elementCount); //foreach (var kv in v1Model.UserVariables) // input.UserVariables.Add(kv.Key, kv.Value); return input; }
/// <summary> /// Convert a OpenMI 1.4 input exchange item into corresponding OpenMI 2.0 base input. /// </summary> /// <param name="item1">OpenMI version 1.4 input exchange item</param> /// <returns>OpenMI 2.0 base input</returns> protected override IBaseInput Convert(OpenMI.Standard.IInputExchangeItem item1) { var engineVariable = string.Format("Input{0}.{1}.{2}", ++_nInputs, item1.Quantity.ID, item1.ElementSet.ID); var describes = new Describes(engineVariable, string.Format("{0}\r\n\r\n{1}", item1.Quantity.Description, item1.ElementSet.Description)); var v1Xml = V1ModelXmlItem(item1); var elementSet = ConvertElementSet(item1.ElementSet, v1Xml); var input = new InputSpaceTimeUserVariables( new Identity(engineVariable, describes), this, new Quantity(item1.Quantity, typeof(double), -999.999), elementSet, engineVariable, -999.999, elementSet.ElementCount); if (v1Xml != null) foreach (var kv in v1Xml.UserVariables) input.UserVariables.Add(kv.Key, kv.Value); return input; }