protected override string BuildStringSTEP()
{
if (mDatabase.mRelease == ReleaseVersion.IFC2x3)
{
return "";//to be implemented
}
string str = base.BuildStringSTEP() + "," + mIdentification + "," + mName + "," + mDescription;
if (mDocumentReferences.Count == 0)
str += ",$,";
else
{
str += ",(" + ParserSTEP.LinkToString(mDocumentReferences[0]);
for (int icounter = 1; icounter < mDocumentReferences.Count; icounter++)
str += "," + ParserSTEP.LinkToString(mDocumentReferences[0]);
str += "),";
}
str += mPurpose + "," + mIntendedUse + "," + mScope + "," + mRevision + "," + ParserSTEP.LinkToString(mDocumentOwner);
if (mEditors.Count == 0)
str += ",$,";
else
{
str += ",(" + ParserSTEP.LinkToString(mEditors[0]);
for (int icounter = 1; icounter < mEditors.Count; icounter++)
str += "," + ParserSTEP.LinkToString(mEditors[0]);
str += "),";
}
str += mCreationTime + "," + mLastRevisionTime + "," + (mDatabase.mRelease == ReleaseVersion.IFC2x3 ? ParserSTEP.LinkToString(mSSElectronicFormat) : (mElectronicFormat == "$" ? "$" : "'" + mElectronicFormat + "'"));
str += (mDatabase.Release == ReleaseVersion.IFC2x3 ? ",$,$" : (mValidFrom == "$" ? ",$," : ",'" + mValidFrom + "',") + (mValidUntil == "$" ? "$" : "'" + mValidUntil + ","));
return str + (mConfidentiality == IfcDocumentConfidentialityEnum.NOTDEFINED ? ",$," : ",." + mConfidentiality.ToString() + ".,") + (mStatus == IfcDocumentStatusEnum.NOTDEFINED ? "$" : "." + mStatus.ToString() + ".");
}
internal static IfcDocumentInformation Parse(string strDef, ReleaseVersion schema) { IfcDocumentInformation d = new IfcDocumentInformation(); int ipos = 0; parseFields(d, ParserSTEP.SplitLineFields(strDef), ref ipos, schema); return d; }