internal static void parseFields(IfcDoorType s, List<string> arrFields, ref int ipos, ReleaseVersion schema)
{
if (schema == ReleaseVersion.IFC2x3)
IfcTypeProduct.parseFields(s, arrFields, ref ipos);
else
{
IfcElementType.parseFields(s, arrFields, ref ipos);
s.mPredefinedType = (IfcDoorTypeEnum)Enum.Parse(typeof(IfcDoorTypeEnum), arrFields[ipos++].Replace(".", ""));
}
s.mOperationType = (IfcDoorTypeOperationEnum)Enum.Parse(typeof(IfcDoorTypeOperationEnum), arrFields[ipos++].Replace(".", ""));
s.mParameterTakesPrecedence = ParserSTEP.ParseBool(arrFields[ipos++]);
s.mUserDefinedOperationType = arrFields[ipos++].Replace("'", "");
}
protected override string BuildStringSTEP() { return base.BuildStringSTEP() + (mDatabase.mRelease == ReleaseVersion.IFC2x3 ? ",." : ",." + mPredefinedType.ToString() + ".,.") + mOperationType.ToString() + (mDatabase.mRelease == ReleaseVersion.IFC2x3 ? ".,.NOTDEFINED" : "") + ".," + ParserSTEP.BoolToString(mParameterTakesPrecedence) + (mDatabase.mRelease == ReleaseVersion.IFC2x3 ? "," + ParserSTEP.BoolToString(false) : (mUserDefinedOperationType == "$" ? ",$" : ",'" + mUserDefinedOperationType + "'")); }