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; }