//internal IfcTelecomAddress(List<string> phone,List<string> fax,string pager,List<string> email,string www,List<int> internal static void parseFields(IfcTelecomAddress a, List<string> arrFields, ref int ipos,Schema schema) { IfcAddress.parseFields(a, arrFields, ref ipos); string str = arrFields[ipos++]; if (str != "$") { List<string> lst = ParserSTEP.SplitLineFields(str.Substring(1, str.Length - 2)); for (int icounter = 0; icounter < lst.Count; icounter++) a.mTelephoneNumbers.Add(lst[icounter]); } str = arrFields[ipos++]; if (str != "$") { List<string> lst = ParserSTEP.SplitLineFields(str.Substring(1, str.Length - 2)); for (int icounter = 0; icounter < lst.Count; icounter++) a.mFacsimileNumbers.Add(lst[icounter]); } a.mPagerNumber = arrFields[ipos++]; str = arrFields[ipos++]; if (str != "$") { List<string> lst = ParserSTEP.SplitLineFields(str.Substring(1, str.Length - 2)); for (int icounter = 0; icounter < lst.Count; icounter++) a.mElectronicMailAddresses.Add(lst[icounter]); } a.mWWWHomePageURL = arrFields[ipos++]; if (schema != Schema.IFC2x3) { str = arrFields[ipos++]; if (!str.StartsWith("$")) a.mMessagingIDs = ParserSTEP.SplitListLinks(str.Substring(1, str.Length - 2)); } }
internal static IfcTelecomAddress Parse(string strDef,Schema schema) { IfcTelecomAddress a = new IfcTelecomAddress(); int ipos = 0; parseFields(a, ParserSTEP.SplitLineFields(strDef), ref ipos,schema); return a; }
internal IfcTelecomAddress(IfcTelecomAddress o) : base(o) { mTelephoneNumbers = new List<string>(o.mTelephoneNumbers.ToArray()); mFacsimileNumbers = new List<string>(o.mFacsimileNumbers.ToArray()); mPagerNumber = o.mPagerNumber; mElectronicMailAddresses = new List<string>(o.mElectronicMailAddresses.ToArray()); mWWWHomePageURL = o.mWWWHomePageURL; mMessagingIDs = new List<int>(o.mMessagingIDs); }