public static UnitOfMeasure ToDisplayUnit(this ISOProcessDataVariable pdv, RepresentationMapper mapper, ISO11783_TaskData taskData) { ISOUnit userUnit = null; if (!string.IsNullOrEmpty(pdv.ValuePresentationIdRef)) { ISOValuePresentation vpn = taskData.ChildElements.OfType <ISOValuePresentation>().FirstOrDefault(v => v.ValuePresentationID == pdv.ValuePresentationIdRef); if (vpn != null) { userUnit = new ISOUnit(vpn); } } if (userUnit != null) { UnitOfMeasure adaptUnit = null; try { adaptUnit = userUnit.ToAdaptUnit(); } catch { //Suppressing this as a non-critical exception } return(adaptUnit); } return(null); }
public ISOUnit(ISOValuePresentation vpn) : this(vpn.UnitDesignator, vpn.Scale, vpn.Offset) { }