public ISODataLogTrigger ExportDataLogTrigger(DataLogTrigger adaptDataLogTrigger) { ISODataLogTrigger isoDataLogTrigger = new ISODataLogTrigger(); int?ddi = RepresentationMapper.Map(adaptDataLogTrigger.Representation); if (ddi.HasValue) //Need DDI for a valid DLT { isoDataLogTrigger.DataLogDDI = ddi.Value.AsHexDDI(); isoDataLogTrigger.DataLogMethod = ExportDataLogMethod(adaptDataLogTrigger.DataLogMethod); isoDataLogTrigger.DataLogDistanceInterval = adaptDataLogTrigger.DataLogDistanceInterval.AsIntViaMappedDDI(RepresentationMapper); isoDataLogTrigger.DataLogTimeInterval = adaptDataLogTrigger.DataLogTimeInterval.AsIntViaMappedDDI(RepresentationMapper); isoDataLogTrigger.DataLogThresholdMinimum = adaptDataLogTrigger.DataLogThresholdMinimum.AsIntViaMappedDDI(RepresentationMapper); isoDataLogTrigger.DataLogThresholdMaximum = adaptDataLogTrigger.DataLogThresholdMaximum.AsIntViaMappedDDI(RepresentationMapper); isoDataLogTrigger.DataLogThresholdChange = adaptDataLogTrigger.DataLogThresholdChange.AsIntViaMappedDDI(RepresentationMapper); if (adaptDataLogTrigger.DeviceElementId.HasValue) { isoDataLogTrigger.DeviceElementIdRef = TaskDataMapper.InstanceIDMap.GetISOID(adaptDataLogTrigger.DeviceElementId.Value); } //Not yet implemented //isoDataLogTrigger.ValuePresentationIdRef = ""; //isoDataLogTrigger.DataLogPGN = null; //isoDataLogTrigger.DataLogPGNStartBit = null; //isoDataLogTrigger.DataLogPGNStopBit = null; } return(isoDataLogTrigger); }
public DataLogTrigger ImportDataLogTrigger(ISODataLogTrigger isoDataLogTrigger) { int ddi = isoDataLogTrigger.DataLogDDI.AsInt32DDI(); ApplicationDataModel.Representations.Representation representation = null; if (ddi != DefaultSet) { representation = RepresentationMapper.Map(ddi); } if (ddi == DefaultSet || representation != null) //Check that we can map to something meaningful before creating the DLT { DataLogTrigger adaptTrigger = new DataLogTrigger(); if (ddi == DefaultSet) { adaptTrigger.RequestDefaultProcessData = true; } else { adaptTrigger.Representation = representation; } adaptTrigger.DataLogMethods = ImportDataLogMethods(isoDataLogTrigger.DataLogMethod); //Obsolete behavior adaptTrigger.DataLogMethod = adaptTrigger.DataLogMethods.Any() ? adaptTrigger.DataLogMethods.First() : LoggingMethodEnum.Total; if (isoDataLogTrigger.DataLogDistanceInterval.HasValue) { adaptTrigger.DataLogDistanceInterval = isoDataLogTrigger.DataLogDistanceInterval.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } if (isoDataLogTrigger.DataLogTimeInterval.HasValue) { adaptTrigger.DataLogTimeInterval = isoDataLogTrigger.DataLogTimeInterval.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } if (isoDataLogTrigger.DataLogThresholdMinimum.HasValue) { adaptTrigger.DataLogThresholdMinimum = isoDataLogTrigger.DataLogThresholdMinimum.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } if (isoDataLogTrigger.DataLogThresholdMaximum.HasValue) { adaptTrigger.DataLogThresholdMaximum = isoDataLogTrigger.DataLogThresholdMaximum.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } if (isoDataLogTrigger.DataLogThresholdChange.HasValue) { adaptTrigger.DataLogThresholdChange = isoDataLogTrigger.DataLogThresholdChange.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } adaptTrigger.DeviceElementId = TaskDataMapper.InstanceIDMap.GetADAPTID(isoDataLogTrigger.DeviceElementIdRef); //Not yet implemented //adaptTrigger.LoggingLevel = null; return(adaptTrigger); } return(null); }
public IEnumerable <DataLogTrigger> ImportDataLogTriggers(IEnumerable <ISODataLogTrigger> isoDataLogTriggers) { //Import DLTs List <DataLogTrigger> adaptDLTs = new List <DataLogTrigger>(); foreach (ISODataLogTrigger isoDataLogTrigger in isoDataLogTriggers) { DataLogTrigger adaptDataLogTrigger = ImportDataLogTrigger(isoDataLogTrigger); if (adaptDataLogTrigger != null) { adaptDLTs.Add(adaptDataLogTrigger); } } return(adaptDLTs); }
public ISODataLogTrigger ExportDataLogTrigger(DataLogTrigger adaptDataLogTrigger) { ISODataLogTrigger isoDataLogTrigger = new ISODataLogTrigger(); int?ddi = null; if (adaptDataLogTrigger.RequestDefaultProcessData) { ddi = DefaultSet; //DFFF } else if (adaptDataLogTrigger.Representation != null) { ddi = RepresentationMapper.Map(adaptDataLogTrigger.Representation); } if (ddi.HasValue) //Need DDI for a valid DLT { isoDataLogTrigger.DataLogDDI = ddi.Value.AsHexDDI(); var loggingMethods = adaptDataLogTrigger.DataLogMethods.Any() ? adaptDataLogTrigger.DataLogMethods : new List <LoggingMethodEnum> { adaptDataLogTrigger.DataLogMethod }; isoDataLogTrigger.DataLogMethod = ExportDataLogMethods(loggingMethods); isoDataLogTrigger.DataLogDistanceInterval = adaptDataLogTrigger.DataLogDistanceInterval?.AsIntViaMappedDDI(RepresentationMapper); isoDataLogTrigger.DataLogTimeInterval = adaptDataLogTrigger.DataLogTimeInterval?.AsIntViaMappedDDI(RepresentationMapper); isoDataLogTrigger.DataLogThresholdMinimum = adaptDataLogTrigger.DataLogThresholdMinimum?.AsIntViaMappedDDI(RepresentationMapper); isoDataLogTrigger.DataLogThresholdMaximum = adaptDataLogTrigger.DataLogThresholdMaximum?.AsIntViaMappedDDI(RepresentationMapper); isoDataLogTrigger.DataLogThresholdChange = adaptDataLogTrigger.DataLogThresholdChange?.AsIntViaMappedDDI(RepresentationMapper); if (adaptDataLogTrigger.DeviceElementId.HasValue) { isoDataLogTrigger.DeviceElementIdRef = TaskDataMapper.InstanceIDMap.GetISOID(adaptDataLogTrigger.DeviceElementId.Value); } //Not yet implemented //isoDataLogTrigger.ValuePresentationIdRef = ""; //isoDataLogTrigger.DataLogPGN = null; //isoDataLogTrigger.DataLogPGNStartBit = null; //isoDataLogTrigger.DataLogPGNStopBit = null; } return(isoDataLogTrigger); }
public DataLogTrigger ImportDataLogTrigger(ISODataLogTrigger isoDataLogTrigger) { int ddi = isoDataLogTrigger.DataLogDDI.AsInt32DDI(); ApplicationDataModel.Representations.Representation representation = RepresentationMapper.Map(ddi); if (representation != null) { DataLogTrigger adaptTrigger = new DataLogTrigger(); adaptTrigger.Representation = representation; adaptTrigger.DataLogMethod = ImportDataLogMethod(isoDataLogTrigger.DataLogMethod); if (isoDataLogTrigger.DataLogDistanceInterval.HasValue) { adaptTrigger.DataLogDistanceInterval = isoDataLogTrigger.DataLogDistanceInterval.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } if (isoDataLogTrigger.DataLogTimeInterval.HasValue) { adaptTrigger.DataLogTimeInterval = isoDataLogTrigger.DataLogTimeInterval.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } if (isoDataLogTrigger.DataLogThresholdMinimum.HasValue) { adaptTrigger.DataLogThresholdMinimum = isoDataLogTrigger.DataLogThresholdMinimum.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } if (isoDataLogTrigger.DataLogThresholdMaximum.HasValue) { adaptTrigger.DataLogThresholdMaximum = isoDataLogTrigger.DataLogThresholdMaximum.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } if (isoDataLogTrigger.DataLogThresholdChange.HasValue) { adaptTrigger.DataLogThresholdChange = isoDataLogTrigger.DataLogThresholdChange.Value.AsNumericRepresentationValue(ddi, RepresentationMapper); } adaptTrigger.DeviceElementId = TaskDataMapper.InstanceIDMap.GetADAPTID(isoDataLogTrigger.DeviceElementIdRef); //Not yet implemented //adaptTrigger.LoggingLevel = null; return(adaptTrigger); } return(null); }