protected static void parseFields(IfcWorkControl c, List <string> arrFields, ref int ipos, ReleaseVersion schema) { IfcControl.parseFields(c, arrFields, ref ipos, schema); if (schema == ReleaseVersion.IFC2x3) { c.mIdentification = arrFields[ipos++].Replace("'", ""); c.mSSCreationDate = ParserSTEP.ParseLink(arrFields[ipos++]); c.mCreators = ParserSTEP.SplitListLinks(arrFields[ipos++]); c.mPurpose = arrFields[ipos++]; c.mSSDuration = ParserSTEP.ParseDouble(arrFields[ipos++]); c.mSSTotalFloat = ParserSTEP.ParseDouble(arrFields[ipos++]); c.mSSStartTime = ParserSTEP.ParseLink(arrFields[ipos++]); c.mSSFinishTime = ParserSTEP.ParseLink(arrFields[ipos++]); string s = arrFields[ipos++]; if (s[0] == '.') { c.mWorkControlType = (IfcWorkControlTypeEnum)Enum.Parse(typeof(IfcWorkControlTypeEnum), s.Replace(".", "")); } c.mUserDefinedControlType = arrFields[ipos++]; } else { c.mCreationDate = IfcDateTime.parseSTEP(arrFields[ipos++]); c.mCreators = ParserSTEP.SplitListLinks(arrFields[ipos++]); c.mPurpose = arrFields[ipos++]; c.mDuration = arrFields[ipos++]; c.mTotalFloat = arrFields[ipos++]; c.mStartTime = IfcDateTime.parseSTEP(arrFields[ipos++]); c.mFinishTime = IfcDateTime.parseSTEP(arrFields[ipos++]); } }
internal static void parseFields(IfcWorkCalendar c, List <string> arrFields, ref int ipos) { IfcControl.parseFields(c, arrFields, ref ipos); c.mWorkingTimes = ParserSTEP.SplitListLinks(arrFields[ipos++]); c.mExceptionTimes = ParserSTEP.SplitListLinks(arrFields[ipos++]); string s = arrFields[ipos++]; if (s.StartsWith(".")) { c.mPredefinedType = (IfcWorkCalendarTypeEnum)Enum.Parse(typeof(IfcWorkCalendarTypeEnum), s.Replace(".", "")); } }