protected virtual object Visit(openehr.openehr.am.openehr_profile.data_types.quantity.Impl.C_DV_QUANTITY o, int depth) { C_DV_QUANTITY result = new C_DV_QUANTITY(); CloneC_Object(result, o); if (o.assumed_value() != null) { result.assumed_value = CloneDvQuantity((openehr.openehr.am.openehr_profile.data_types.quantity.Impl.QUANTITY)o.assumed_value()); } if (o.property() != null) { result.property = CloneCodePhrase(o.property()); if (o.list() != null && o.list().count() > 0) { result.list = new C_QUANTITY_ITEM[o.list().count()]; for (int i = 1; i <= result.list.Length; i++) { result.list[i - 1] = CloneQuantityItem(o.list().i_th(i) as openehr.openehr.am.openehr_profile.data_types.quantity.Impl.C_QUANTITY_ITEM); } } } return(result); }
private static CQuantity Map(this C_DV_QUANTITY model) { var quantity = new CQuantity { ReferenceModelTypeName = model.rm_type_name, NodeId = model.node_id }; if (model.property != null) { quantity.Property = model.property.Map(); } if (model.occurrences != null) { quantity.Occurences = model.occurrences.Map(); } foreach (C_QUANTITY_ITEM unit in model.list) { quantity.QuantityConstraints.Add(new CQuantityItem { Units = unit.units, Magnitude = unit.magnitude.Map() }); } return(quantity); }