private Beta_Application_CTPT_LineZ.Model.GPA._Measurement_setMeta CreateGPA_Measurement_setMeta(TypeMapping typeMapping) { Dictionary <string, FieldMapping> fieldLookup = typeMapping.FieldMappings.ToDictionary(mapping => mapping.Field.Identifier); Beta_Application_CTPT_LineZ.Model.GPA._Measurement_setMeta obj = new Beta_Application_CTPT_LineZ.Model.GPA._Measurement_setMeta(); { // Create Beta_Application_CTPT_LineZ.Model.GPA._Line_dataMeta UDT array for "Measurements" field ArrayMapping arrayMapping = (ArrayMapping)fieldLookup["Measurements"]; PushWindowFrame(arrayMapping); List <Beta_Application_CTPT_LineZ.Model.GPA._Line_dataMeta> list = new List <Beta_Application_CTPT_LineZ.Model.GPA._Line_dataMeta>(); int count = GetUDTArrayTypeMappingCount(arrayMapping); for (int i = 0; i < count; i++) { TypeMapping nestedMapping = GetUDTArrayTypeMapping(arrayMapping, i); list.Add(CreateGPA_Line_dataMeta(nestedMapping)); } obj.Measurements = list.ToArray(); PopWindowFrame(arrayMapping); } return(obj); }
public override void Map(IDictionary <MeasurementKey, IMeasurement> measurements) { SignalLookup.UpdateMeasurementLookup(measurements); TypeMapping inputMapping = MappingCompiler.GetTypeMapping(InputMapping); Reset(); Beta_Application_CTPT_LineZ.Model.GPA.Measurement_set inputData = CreateGPAMeasurement_set(inputMapping); Reset(); Beta_Application_CTPT_LineZ.Model.GPA._Measurement_setMeta inputMeta = CreateGPA_Measurement_setMeta(inputMapping); Algorithm.Output algorithmOutput = Algorithm.Execute(inputData, inputMeta); Subscriber.SendMeasurements(m_unmapper.Unmap(algorithmOutput.OutputData, algorithmOutput.OutputMeta)); }