/// <summary> /// Constructor of the reader for IFC2x3 XML. XSD is different for different versions of IFC and there is a major difference /// between IFC2x3 and IFC4 to there are two different classes to deal with this. /// </summary>x /// <param name="getOrCreate">Delegate which will be used to getOrCreate new entities</param> /// <param name="finish">Delegate which will be called once the entity is finished (no changes will be made to it) /// This is useful for a DB when this is the point when it can be serialized to DB</param> /// <param name="metadata">Metadata model used to inspect Express types and their properties</param> public XbimXmlReader4(GetOrCreateEntity getOrCreate, FinishEntity finish, ExpressMetaData metadata) { if (getOrCreate == null) { throw new ArgumentNullException("getOrCreate"); } if (finish == null) { throw new ArgumentNullException("finish"); } if (metadata == null) { throw new ArgumentNullException("metadata"); } _getOrCreate = getOrCreate; _finish = finish; _metadata = metadata; }
/// <summary> /// Constructor of the reader for IFC2x3 XML. XSD is different for different versions of IFC and there is a major difference /// between IFC2x3 and IFC4 to there are two different classes to deal with this. /// </summary>x /// <param name="create">Delegate which will be used to create new entities</param> /// <param name="finish">Delegate which will be called once the entity is finished (no changes will be made to it) /// This is useful for a DB when this is the point when it can be serialized to DB</param> /// <param name="metadata">Metadata model used to inspect Express types and their properties</param> public IfcXmlReader(GetOrCreateEntity create, FinishEntity finish, ExpressMetaData metadata) { if (create == null) { throw new ArgumentNullException("create"); } if (finish == null) { throw new ArgumentNullException("finish"); } if (metadata == null) { throw new ArgumentNullException("metadata"); } _create = create; _finish = finish; _metadata = metadata; }
/// <summary> /// Constructor of the reader for IFC2x3 XML. XSD is different for different versions of IFC and there is a major difference /// between IFC2x3 and IFC4 to there are two different classes to deal with this. /// </summary>x /// <param name="getOrCreate">Delegate which will be used to getOrCreate new entities</param> /// <param name="finish">Delegate which will be called once the entity is finished (no changes will be made to it) /// This is useful for a DB when this is the point when it can be serialized to DB</param> /// <param name="metadata">Metadata model used to inspect Express types and their properties</param> /// <param name="logger">A Logger</param> public XbimXmlReader4(GetOrCreateEntity getOrCreate, FinishEntity finish, ExpressMetaData metadata, ILogger logger) { if (getOrCreate == null) { throw new ArgumentNullException("getOrCreate"); } if (finish == null) { throw new ArgumentNullException("finish"); } if (metadata == null) { throw new ArgumentNullException("metadata"); } _getOrCreate = getOrCreate; _finish = finish; _metadata = metadata; Logger = logger ?? XbimLogging.CreateLogger <XbimXmlReader4>();; }